Cocher tous les checkbutton
Bonjour, étant plutôt novice en Python, j'ai quelques soucis avec l'utilisation d'un checkbutton "Sélectionner tout".
Je crée un nombre de checkbutton, chacun correspondant à un serveur en ligne (cb étant un dictionnaire contenant des variables checkbox):
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
v=1
for serv in lstserv:
lstserv[serv] = IntVar()
ping = os.system("ping -n 1 "+serv+" | find "+'"Impossible"')
if ping:
checkbox = cb[v]
checkbox = Checkbutton(self, text = " "+serv, variable = lstserv[serv],width=30, onvalue = 1, offvalue = 0,anchor=W) #création checkbox
text.window_create("end", window=checkbox)
label = Label(self, text= socket.gethostbyname(serv),anchor=W) #création label
text.window_create("end", window=label)
text.insert("end", "\n")#force une checkbox et un label par ligne
lstservon.insert(v,serv) #insère le nom du serveur à la position v dans la liste lstservon
var.insert(v,lstserv[serv])
v = v+1 |
A la fin de cette boucle je crée mon checkbutton sélectionner tout et appelle la fonction SelectAll lors de l'appuie sur ce checkbutton, qui est censée selectionner tous les checkbutton:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| cbgene = Checkbutton(self, text = " Tout sélectionner",variable= cbgenevar,width=30,anchor=W,command=SelectAll)
def SelectAll():
global v
global c
global checkbox
global cb
global cbgenevar
if cbgenevar.get():
v=1
while v < c:
checkbox = cb[v]
checkbox.select()
v = v + 1 |
Si quelqu'un pouvait m'éclairer sur ma ou mes erreurs, j'en serai ravi, j'avoue que je m'arrache les cheveux dessus depuis 2 ou 3 jours sans trouver de solution.. :cry:
Merci d'avance =)