Bonjour,
J’aimerai utiliser une boucle pour créer une vingtaine de boutons similaires situés chacun dans un canvas différent et executant une commande différente voilà mon code associé:
def Ecouter(num_poste):
if ve[num_poste].get() == 1:
self.caskp1=self.canvas_image[num_poste].create_image(2,2, image=cask, anchor='nw')
else:
self.canvas_image[num_poste].delete(self.caskp1)
buttonE=[None]
i=1
while(i<3):
buttonE.append(Tkinter.Checkbutton(self.canvasp[i],image=self.caskN, variable = ve[i],command=lambda:Ecouter(i),indicatoron=0))
buttonE[i].place(x=0,y=2)
i=i+1
Pour l’instant je ne crée que deux boutons, ils sont bien créés à la bonne place avec la bonne image, il n’y a donc pas de problème avec le remplissage de la liste buttonE.
Par contre lorsque je clique dessus il ne se passe strictement rien…
Alors que si je crée le bouton à la main:
buttonE1 = Tkinter.Checkbutton(self.canvasp[1],image=self.caskN, variable = ve[1],command=lambda:Ecouter(1),indicatoron=0)
buttonE1.place(x=0,y=2)
Tout fonctionne bien…
Une idée?
Merci