arrière-plan de fenetre

Le
alainL
Bonsoir,
Comment mettre une image (jpg) en arrière-plan d'une fen (from Tkinter) ?
Faut-il créer un 'Canvas' à la taille de celle-ci ?
et surtout comment écrire sur cette image ???
(faire afficher une des données d'une ligne d'un fichier texte -après test-
sur l'image de fond)
Merci pour votre aide à débutant !

alain
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Eric Brunel
Le #658515
On Tue, 20 Nov 2007 11:25:42 +0100, alainL wrote:
Bonsoir,
Comment mettre une image (jpg) en arrière-plan d'une fen (from Tkinter) ?


Déjà, JPG, c'est mal parti: sans extension, tk/Tkinter ne supporte que le
GIF. On doit pouvoir s'en sortir en utilisant PIL, mais je ne connais pas
suffisamment pour t'aider là-dessus...

Faut-il créer un 'Canvas' à la taille de celle-ci ?
et surtout comment écrire sur cette image ???


Si tu veux écrire dessus, c'est effectivement la meilleure façon de faire.
Genre (avec un GIF):

from Tkinter import *
root = Tk()
image = PhotoImage(file='toto.gif')
canvas = Canvas(root, width=1, height=1)
canvas.pack(fill=BOTH, expand=1)
canvas.create_image(0, 0, image=image, anchor=NW)
canvas.create_text(0, 20, text='Woohoo!', anchor=W)
root.geometry('80x80')
root.mainloop()

Merci pour votre aide à débutant !


HTH
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17l8(%,5.Z*(93-965$l7+-'])"

Eddy Maue
Le #658513
Bonjour,

image = PhotoImage(file='C:Mes ImagesDuct Cleaning avec Kodac100_2020.JPG')

Message File Name Line Position
Traceback
<module> C:Documents and SettingsEddy MaueMes documentsMes Projets
PythonExemple sur XMLafficher une image.py 3
__init__ C:Python25liblib-tkTkinter.py 3270
__init__ C:Python25liblib-tkTkinter.py 3226
"TclError: couldn't open ""C:Mes ImagesDuct Cleaning avec "":
no such file or directory"


comment solutionner ce probleme ?

est-ce que Python est capable sur Windows Xp de traiter chemin avec des epaces
?

a+ eddy

Eric Brunel avait énoncé :
On Tue, 20 Nov 2007 11:25:42 +0100, alainL
Bonsoir,
Comment mettre une image (jpg) en arrière-plan d'une fen (from Tkinter) ?


Déjà, JPG, c'est mal parti: sans extension, tk/Tkinter ne supporte que le
GIF. On doit pouvoir s'en sortir en utilisant PIL, mais je ne connais pas
suffisamment pour t'aider là-dessus...

Faut-il créer un 'Canvas' à la taille de celle-ci ?
et surtout comment écrire sur cette image ???


Si tu veux écrire dessus, c'est effectivement la meilleure façon de faire.
Genre (avec un GIF):

from Tkinter import *
root = Tk()
image = PhotoImage(file='toto.gif')
canvas = Canvas(root, width=1, height=1)
canvas.pack(fill=BOTH, expand=1)
canvas.create_image(0, 0, image=image, anchor=NW)
canvas.create_text(0, 20, text='Woohoo!', anchor=W)
root.geometry('80x80')
root.mainloop()

Merci pour votre aide à débutant !


HTH



Michel Claveau - NoSpam SVP ; merci
Le #658512
Bonsoir !

On doit pouvoir s'en sortir en utilisant PIL, mais je ne connais pas
suffisamment pour t'aider là-dessus...


Pour une fois que je peux venir à ton secours...
Alors, j'ai un exemple, pour convertir un fichier Jpeg en GIF
Dans cet exemple, le fichier "velo.jpg" est lu, et le fichier
"velo.gif" est écrit.

J'espère que mon exemple sera compréhensible, pas trop verbeux, et que
tu ne sera pas noyé sous les fioritures inutiles, et les commentaires
baveux.

Bref, je me lance !

Voici le code-source de l'exemple sus-cité :

import Image
i=Image.open("velo.jpg")
i.save("velo.gif")

Précision : la tabulation au début des lignes n'est là que pour "faire
bien" ; il faut l'adapter à l'utilisation.


Bonne lecture

Michel Claveau

Méta-MCI \(MVP\)
Le #658510
Bonsoir !

Les chemins avec des espaces, pas de problème.
Par contre, les anti-slash non doublés, pour des chaînes non-raw, Dur !
Dur !

Tente :
file='C:\Mes Images\Duct Cleaning avec Kodac\100_2020.JPG'
ou
file=r'C:Mes ImagesDuct Cleaning avec Kodac100_2020.JPG'


@+

MCI
Michel Claveau - NoSpam SVP ; merci
Le #658509
Bonsoir !

Les chemins avec des espaces, pas de problème.
Par contre, les anti-slash non doublés, pour des chaînes non-raw, Dur !
Dur !

Tente :
file='C:\Mes Images\Duct Cleaning avec Kodac\100_2020.JPG'
ou
file=r'C:Mes ImagesDuct Cleaning avec Kodac100_2020.JPG'


@+

MCI
Eddy Maue
Le #658268
salut encore, j'ai essayé une jpg et une bmp et les deux me donne l'erreur
suivante

Message File Name Line Position
Traceback
<module> C:Documents and SettingsEddy MaueMes documentsMes Projets
PythonExemple sur XMLafficher une image.py 3
__init__ C:Python25liblib-tkTkinter.py 3270
__init__ C:Python25liblib-tkTkinter.py 3226
"TclError: couldn't recognize data in image file ""C:EEEmpire
EarthEE004.bmp"""


a+ eddy et merci de votre aide

Le 23-11-07, Michel Claveau - NoSpam SVP ; merci a supposé :
Bonsoir !

Les chemins avec des espaces, pas de problème.
Par contre, les anti-slash non doublés, pour des chaînes non-raw, Dur ! Dur
!

Tente :
file='C:\Mes Images\Duct Cleaning avec Kodac\100_2020.JPG'
ou
file=r'C:Mes ImagesDuct Cleaning avec Kodac100_2020.JPG'

@+

MCI


Eddy Maue
Le #658267
Allo,

comment ca que tk n'est pas capable de traiter mon image, j'ai essayé une jpg
et une bmp, là je sais plus quoi essayer...

bonne fds

a+ eddy

Eddy Maue a exprimé avec précision :
salut encore, j'ai essayé une jpg et une bmp et les deux me donne l'erreur
suivante

Message File Name Line Position
Traceback
<module> C:Documents and SettingsEddy MaueMes documentsMes Projets
PythonExemple sur XMLafficher une image.py 3
__init__ C:Python25liblib-tkTkinter.py 3270
__init__ C:Python25liblib-tkTkinter.py 3226
"TclError: couldn't recognize data in image file ""C:EEEmpire
EarthEE004.bmp"""

a+ eddy et merci de votre aide

Le 23-11-07, Michel Claveau - NoSpam SVP ; merci a supposé :
Bonsoir !

Les chemins avec des espaces, pas de problème.
Par contre, les anti-slash non doublés, pour des chaînes non-raw, Dur !
Dur !

Tente :
file='C:\Mes Images\Duct Cleaning avec Kodac\100_2020.JPG'
ou
file=r'C:Mes ImagesDuct Cleaning avec Kodac100_2020.JPG'

@+

MCI




alainL
Le #658048
"Eric Brunel"
On Tue, 20 Nov 2007 11:25:42 +0100, alainL wrote:
Bonsoir,
Comment mettre une image (jpg) en arrière-plan d'une fen (from Tkinter) ?


Déjà, JPG, c'est mal parti: sans extension, tk/Tkinter ne supporte que le
GIF. On doit pouvoir s'en sortir en utilisant PIL, mais je ne connais pas
suffisamment pour t'aider là-dessus...


pour le jpg, ça marche sans pb avec PIL:
______________________________________________________________
from PIL import Image, ImageTk
import Tkinter as Tk
root = Tk.Tk()

image = Image.open("Agenda.jpg")
photo = ImageTk.PhotoImage(image)

canvas = Tk.Canvas(root, width = 600, height = 451)
canvas.create_image(0,0, anchor = Tk.NW, image=photo)
canvas.pack()

canvas.create_text(150, 100, text="Ce texte est écrit directement sur le
canevas")

root.mainloop()
---------------------------------------------------------------------------

Merci à tous et bonne soirée
alain


Eric Brunel
Le #665173
On Fri, 23 Nov 2007 18:41:42 +0100, Eddy Maue wrote:

Allo,

comment ca que tk n'est pas capable de traiter mon image, j'ai essayé
une jpg et une bmp, là je sais plus quoi essayer...


Hmm, hmm... Extrait de ma première réponse:
---------
Déjà, JPG, c'est mal parti: sans extension, tk/Tkinter ne supporte que le
GIF. On doit pouvoir s'en sortir en utilisant PIL, mais je ne connais pas
suffisamment pour t'aider là-dessus...
---------

Voilà, voilà...

Pour une solution, voir la réponse de Michel ou d'alainL à ma réponse...

Par ailleurs, stp, évite de répondre au dessus du message d'origine, sinon
c'est incompéhensible pour quelqu'un qui prend la discussion en cours de
route...

HTH
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17l8(%,5.Z*(93-965$l7+-'])"

Publicité
Poster une réponse
Anonyme