Bonjour,
je n'arrive pas a avoir le comportement que je veux avec un "callback" de bouton.
voici l'exemple:
lorsque j'appuie sur un bouton (A ou B), j'obtiens le meme resultat :
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 import Tkinter as tk root = tk.Tk() def callback(txt): print "--> callback: %s"%txt aList = ["A", "B"] for txt in aList: button = tk.Button(root, text=txt) button["command"] = lambda:callback(txt) button.config(width=30, height=10) button.pack() root.mainloop()
or biensur, je voudrais que ce soit la lettre du bouton.
Code : Sélectionner tout - Visualiser dans une fenêtre à part --> callback: b
Comment faire pour que la fonction lambda ne soit pas liee a la variable temporaire "txt", mais a la valeur (a l'instance pour les cas plus complexes) de "txt" au moment de la creation de la fonction lambda ?
Quelqu'un pourrait-il m'eclairer ?
merci.
Partager