[RESOLU]Probleme d'argument dans une liste de bouton
Bonjour,
Je créé une liste de boutons via une boucle "for i in ", en voulant passer ma variable i à la fonction voulue, mais seule la derniere valeur de i est prise en compte :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
def initialize(self):
self.grid()
self.buttonTab = []
countUser = 0
for i in range(1,6) :
self.buttonTab += [Tkinter.Button(self,text="User "+str(i), command=lambda:self.loginCmd(i))]
self.buttonTab[countUser].grid(column=0,row=countUser)
countUser += 1
def loginCmd(self,id):
print str(id)+" has log in"
for but in self.buttonTab :
Tkinter.Button.destroy(but) |
Ce code créé correctement les 5 boutons(User 1, User 2, ...), correctement placés (row=1,2,...), ils sont meme correctements détruits, mais tous me renvoient toujours la meme valeur : "5 has log in"
C'est surement une erreur tres simple, mais je n'arrive pas à comprendre...
Merci d'avance,
Cordialement