[Python] Gestione checkbox

Daniele Alerni daniele.alerni a gmail.com
Mar 3 Maggio 2016 09:25:23 CEST


Buongiorno,
creo un nuovo post in quanto questo è decisamente più "leggero" (per voi
,io mi sto impiccando :V ) ed è ad una fase diversa(gollum sono tuo
amico... : ) ).

Ringrazio in anticipo chi volesse aiutarmi .

Il mio problema è questo (spiego anche cose ovvie per vedere se ho capito
io)
data una tupla(dati)
creo per ogni elemento della tupla una riga con i dati (nome cognome etc)
e un checkbutton [Fid] (dovrei quindi avere questi checkbutton che si
chiamano a1 a2 etc dove Fid èl'id)
creo un dizionario con coppie id:False
ora vorrei controllare tutti i checkbutton e vedere quali sono (isChecked)
e di questi nel dizionario cambiare il valore della chiave corrispondente a
true
Prendere i valori True del dizionario e cancellarli(ma a questo non sono
ancora arrivato)

il problema è che quando faccio il controllo isChecked() su a[Fid] mi dice
che l'attributo non è valido per gli oggetti di tipo NoneType non capisco
perchè.. quello è un checkbutton e uso un suo attributo..Che sbaglio ??


cont = 0
    cb={}
    a={}
    riga=30
    for contatti in dati :
        riga+=1
        Fid=int(dati[cont][0])
        a[Fid]=Checkbutton(FinestraCancella,text=Fid).grid(row=riga,
column=0)
        cb.update({Fid:False})

        Fnome=str(dati[cont][1])
        Label(FinestraCancella, text=Fnome).grid(row=riga ,column =1)
        Fcognome=str(dati[cont][2])
        Label(FinestraCancella, text=Fcognome).grid(row=riga,column=3)
        Ftelefono=str(dati[cont][3])
        Label(FinestraCancella, text=Ftelefono).grid(row=riga ,column=5)
        Findirizzo=str(dati[cont][4])
        Label(FinestraCancella, text=Findirizzo).grid(row=riga, column=7)
        Fmail=str(dati[cont][5])
        Label(FinestraCancella, text=Fmail).grid(row=riga, column=9)
        cont+=1

    #
    def cancella():
        pass
        print cb
        strcan=[]
        for i in cb:
            if  a[Fid].isChecked():
                print "si"

Grazie.
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20160503/2a4f59fb/attachment-0001.html>


Maggiori informazioni sulla lista Python