Ich hab folgendes Problem bzw. vllt auch ein gedanklichen Fehler.
In meiner for-Schleife hab ich es so geschrieben das Checkbuttons angelegt werden, abhängig von dem wie viele Datensätze angezeigt werden. Sprich Datenbankabfrage enumerate, laufende Nummer etc. passt alles wunderbar aber wenn ich jetzt 2 Checkbuttons anklicke bzw aktiviere wird immer nur der letzte genommen der "ge-checked" is. Ich hab mir testweise eine kleine Ausgabe dazu gebastelt bzw auch eine txt-Datei angelegt wo das "ge-checkte" eingetragen wird.
Es sollen aber alle aktivierte Checkbuttons übertragen werden und nicht nur der letzte.
Hier mein Code (kleiner Auszug, sonst regnets wieder Steine )
Code: Alles auswählen
self.cursor.execute("select * from patient, bilder where patient.klein_name=%s and bilder.patnu=patient.patnu", [self.eingabe.get()])
for self.i, s in enumerate(self.cursor, 1):
self.test_checkbox = StringVar()
Label(self.ueberframe, text=self.i,relief='sunken', anchor=CENTER, background='lightblue').grid(row=self.i, column=0, sticky=NSEW)
Label(self.ueberframe, text=self.datum_ausgabe, relief='sunken', anchor=CENTER).grid(sticky=NSEW, row=self.i, column=1)
Label(self.ueberframe, text=s[30],relief='sunken', anchor=CENTER).grid(sticky=NSEW, row=self.i, column=2)
Label(self.ueberframe, text=s[29],relief='sunken', anchor=CENTER).grid(sticky=NSEW, row=self.i, column=3)
Label(self.ueberframe, text=s[28],relief='sunken', anchor=CENTER).grid(sticky=NSEW, row=self.i, column=4)
Checkbutton(self.ueberframe, variable= self.test_checkbox, onvalue="Serie: "+str(s[29])+" Studie: "+str(s[28]) + " ID " + str(self.i) , offvalue="").grid(row=self.i, column=5)
Ihr seht ja selbst an den Namen das es sich immer noch um ein Test handelt