[Python] Pyhton checkbox changement d'état
Fermé
thibault7249
Messages postés
21
Date d'inscription
lundi 2 juin 2008
Statut
Membre
Dernière intervention
20 février 2009
-
9 févr. 2009 à 16:07
thibault7249 Messages postés 21 Date d'inscription lundi 2 juin 2008 Statut Membre Dernière intervention 20 février 2009 - 10 févr. 2009 à 14:06
thibault7249 Messages postés 21 Date d'inscription lundi 2 juin 2008 Statut Membre Dernière intervention 20 février 2009 - 10 févr. 2009 à 14:06
A voir également:
- [Python] Pyhton checkbox changement d'état
- Changement dns - Guide
- Citizen code python avis - Accueil - Outils
- État - Guide
- Remettre pc etat usine - Guide
- Changement d'écriture - Guide
2 réponses
thibault7249
Messages postés
21
Date d'inscription
lundi 2 juin 2008
Statut
Membre
Dernière intervention
20 février 2009
10 févr. 2009 à 10:48
10 févr. 2009 à 10:48
Bon pour ceux que ça interesse, et j'en sens qu'ils sont 1 ... ^^
j'ai fait une classe dérivée de checkbutton :
class CheckbuttonT(Checkbutton):
____def getText(self):
________print self['text']
____def __init__(self,master,_parametre,_variable):
________Checkbutton.__init__(self, master,text = _parametre,variable = _variable,command = self.getText)
et dans mon script principal :
parametres = np.arange(0,36)
tabchk = []
var=0
j=0
i=0
for parametre in parametres:
____chk =CheckbuttonT.CheckbuttonT(fenetre_root,parametre , _variable = 0)
____tabchk.append(chk)
for a in tabchk:
____a.grid(row = i-j*6+4,column = j)
____i+=1
____if i%6==0:
________j+=1
Le problème maintenant c'est que quand je clique sur un checkbutton , tous se cochent mais quand m'affiche bien le 'text' du bouton sur lequel j'ai cliqué.
j'ai fait une classe dérivée de checkbutton :
class CheckbuttonT(Checkbutton):
____def getText(self):
________print self['text']
____def __init__(self,master,_parametre,_variable):
________Checkbutton.__init__(self, master,text = _parametre,variable = _variable,command = self.getText)
et dans mon script principal :
parametres = np.arange(0,36)
tabchk = []
var=0
j=0
i=0
for parametre in parametres:
____chk =CheckbuttonT.CheckbuttonT(fenetre_root,parametre , _variable = 0)
____tabchk.append(chk)
for a in tabchk:
____a.grid(row = i-j*6+4,column = j)
____i+=1
____if i%6==0:
________j+=1
Le problème maintenant c'est que quand je clique sur un checkbutton , tous se cochent mais quand m'affiche bien le 'text' du bouton sur lequel j'ai cliqué.
thibault7249
Messages postés
21
Date d'inscription
lundi 2 juin 2008
Statut
Membre
Dernière intervention
20 février 2009
10 févr. 2009 à 14:06
10 févr. 2009 à 14:06
j'ai fini par y arriver :
class CheckbuttonT(Checkbutton):
etat = False
def getText(self):
if self.etat == False : self.etat = True
else: self.etat = False
print self['text'],self.etat
def __init__(self,_parametre,_on ,_off):
Checkbutton.__init__(self, text = _parametre,command = self.getText,onvalue = _on , offvalue = _off)
########################################################
parametres = np.arange(0,36)
global tabchk
tabchk = []
var=0
j=0
i=0
for parametre in parametres:
tabchk.append(CheckbuttonT.CheckbuttonT(parametre ,1,0))
for a in tabchk:
a.grid(row = i-j*6+4,column = j)
i+=1
if i%6==0:
j+=1
###########################################################
n=0
dico_canal = {}
while n < 36:
print tabchk[n]['text'],tabchk[n].etat
dico_canal[tabchk[n]['text'] ]= tabchk[n].etat
n +=1
Si ça peut aider quelqu'un un jour
Bonne journée
class CheckbuttonT(Checkbutton):
etat = False
def getText(self):
if self.etat == False : self.etat = True
else: self.etat = False
print self['text'],self.etat
def __init__(self,_parametre,_on ,_off):
Checkbutton.__init__(self, text = _parametre,command = self.getText,onvalue = _on , offvalue = _off)
########################################################
parametres = np.arange(0,36)
global tabchk
tabchk = []
var=0
j=0
i=0
for parametre in parametres:
tabchk.append(CheckbuttonT.CheckbuttonT(parametre ,1,0))
for a in tabchk:
a.grid(row = i-j*6+4,column = j)
i+=1
if i%6==0:
j+=1
###########################################################
n=0
dico_canal = {}
while n < 36:
print tabchk[n]['text'],tabchk[n].etat
dico_canal[tabchk[n]['text'] ]= tabchk[n].etat
n +=1
Si ça peut aider quelqu'un un jour
Bonne journée