Bonjours à tous !
Etant débutant en Pyhon et surtout nouveau sur ce forum, j'ai besoin de votre aide pour mon programme..
J'ai crée un programme qui lance une fenêtre grâce à Tkinter. J'y importe mon background. Cependant, je n'est pas utilisé la méthode conventionnelle pour créer mes boutons à l’intérieur de la fênetre.
J'ai tout d'abord importé mes images faisant office de boutons, puis j'y ai bindé une touche, le tout associé à un event.
Je voudrais maintenant, après avoir cliqué sur le premier bouton (cf code ci-dessous), que lorsqu'on passe la souris sur le second boutons qui vient de s'afficher, l'image de celle-ci change (sans lancer l'event associé à ce deuxième bouton.). En gros un mouseover en mode Tkinter, mais je ne sais pas du tout comment m'y prendre.. Merci d'avance !

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
from Tkinter import *
 
#Création de la fenêtre 
Fenetre = Tk()
Fenetre.title('Test de Fenetre')
Fenetre.configure()
CanvasPrincipal = Canvas(Fenetre, width=1022, height=700)
CanvasPrincipal.pack()
 
#Importation Background + Images Boutons
Background = PhotoImage (file="Images/BgMagasin.gif")
Bouton1 = PhotoImage (file="Images/Bouton1.gif")
Bouton1rouge = PhotoImage (file="Images/bouton1rouge.gif")
Bouton2 = PhotoImage (file="Images/Bouton2.gif")
Bouton2rouge = PhotoImage (file="Images/bouton2rouge.gif")
 
CanvasPrincipal.create_image(510, 385, image = Background)
 
#Images Cliquables
CanvasPrincipal.create_image(170, 300, image = Bouton1, tag = "Choisir1")
 
#Events
def event1(event):
    print("Event 1, OK")
    CanvasPrincipal.create_image(170, 300, image = Bouton1rouge)
    CanvasPrincipal.create_image(510, 300, image = Bouton2, tag = "Choisir12")
 
def event12(event):
    print("Event 12, OK")    
 
# tag_bind(<nom du tag>, <nom event>, <fonction callback>)
CanvasPrincipal.tag_bind("Choisir1", "<Button-1>", event1)
CanvasPrincipal.tag_bind("Choisir12", "<Button-1>", event12)
 
Fenetre.mainloop()