[Python-de] Problem mit Checkbutton in der Objektorientierung

Martin Grabbel mgrabbel at web.de
Fri May 16 11:13:01 EDT 2003


* Jan Voges <jan.voges at gmx.de> [030516 09:29]:
>On 16 May 2003 at 8:45, Martin Grabbel wrote:
>
>> Das scheint also alles soweit zu funktionieren. Aber wieso bleibt
>> die Liste nach auslesen leer?
>
>Ich sehe so auf die Schnelle nichts. Lass mal das   if len(i.get())
>weg, um zu sehen, ob die Liste wenigstens die richtige Anzahl
>Einträge hat.
>Hier ist mein reduziertes, aber lauffähiges Beispiel:
>#-------------------------------------------
>from Tkinter import *
>root = Tk()
>class auswahl:
>  def radiocheck (self,label,allObjects):
>    personalFrame = Frame (root)
>    personalFrame.pack (side=LEFT, fill=X, expand=1)
>    personalLabel = Label (personalFrame, text=label)
>    personalLabel.pack (side=TOP, anchor=W)
>    self.checkObjects = []
>    for i in allObjects:
>      if i[1] == "c":
>        self.checkObjects.append(StringVar())
>        oneObject = Checkbutton (personalFrame, text=i[0],
>          variable=self.checkObjects[-1],
>          onvalue=i[0], offvalue="")
>        oneObject.pack (side=TOP, anchor=W)
>    Button(personalFrame,text="Test",command=self.test).pack()
>
>  def test(self):
>    print [check.get() for check in self.checkObjects
>      if check.get()]     # das len() ist überflüssig
>
>global objectGenreList,genreList
>objectGenreList = (('Komoedie','c'),('Horror','c'),('Drama','c'))
>genreList = auswahl()
>genreList.radiocheck('Genre:',objectGenreList)
>root.mainloop()
>#-------------------------------------------

Hi Jan!

Ja, jetzt funktioniert es. Man sollte auch die richtige der Listen
ansprechen, dann klappt es auch. Habe den Wald vor Bäumen nicht mehr
gesehen, wie man so schön sagt.
Danke nochmals!
Gruß,

Martin




More information about the Python-de mailing list