Besoin d'aide sur un début de jeu
justine.boutry
Messages postés
1
Statut
Membre
-
justine.boutry -
justine.boutry -
Bonjour,
Je suis en terminal avec spé ISN et je débute en python.
Je voudrai au final faire un petit jeu de trouver l'intrus et pour e moment je suis bloquée sur mon interface, je n'arrive pas a ouvrir l'image que je veux mettre dans mon canvas.
Je précise que l'image et mon programme son sauvegardés dans le même dossier.
voila mon code
from Tkinter import *
def pointeur(event):
chainetexte.configure(text ="clic détecté en X=" + str(event.x) +
"clic détecté en Y=" + str(event.y)) #on affiche les coordonnées de la souris
fen = Tk()
fen.title = ("jeu de différence")#on défini la fenetre
image_Tk = ImageTk.PhotoImage(Image.open("photo.jpg")) #on la transforme pour tk
#on la met dans le canvas
canvas = Canvas(fen,width=image_Tk.width(), height=image_Tk.height())#on met l'immage dans le canvas
canvas.bind("<Button-1>", pointeur)#on défini le pointeur de la souris comme bouton
canvas.pack()
chainetexte = Label(fen)
chainetexte.pack()
fen.mainloop()
et voila le message d'erreur :
image_Tk = ImageTk.PhotoImage(Image.open("canvas.jpg")) #on la transforme pour tk
AttributeError: class Image has no attribute 'open'
>>>
Je suis en terminal avec spé ISN et je débute en python.
Je voudrai au final faire un petit jeu de trouver l'intrus et pour e moment je suis bloquée sur mon interface, je n'arrive pas a ouvrir l'image que je veux mettre dans mon canvas.
Je précise que l'image et mon programme son sauvegardés dans le même dossier.
voila mon code
from Tkinter import *
def pointeur(event):
chainetexte.configure(text ="clic détecté en X=" + str(event.x) +
"clic détecté en Y=" + str(event.y)) #on affiche les coordonnées de la souris
fen = Tk()
fen.title = ("jeu de différence")#on défini la fenetre
image_Tk = ImageTk.PhotoImage(Image.open("photo.jpg")) #on la transforme pour tk
#on la met dans le canvas
canvas = Canvas(fen,width=image_Tk.width(), height=image_Tk.height())#on met l'immage dans le canvas
canvas.bind("<Button-1>", pointeur)#on défini le pointeur de la souris comme bouton
canvas.pack()
chainetexte = Label(fen)
chainetexte.pack()
fen.mainloop()
et voila le message d'erreur :
image_Tk = ImageTk.PhotoImage(Image.open("canvas.jpg")) #on la transforme pour tk
AttributeError: class Image has no attribute 'open'
>>>
2 réponses
-
Bonjour!
Les méthodes que tu utilise (Image.open, ImageTk...) ne viennent pas de Tkinter, mais de la librairie PIL.
il faut donc fairefrom Tkinter import * from PIL import Image, ImageTk
Sinon, la prochaine fois que tu postes, n'oublies pas les balises
<@code python>
</@code>
sans les @.
Bonne soirée! -