Liste aus Buttons deren commands einen Parameter übergeben

Fragen zu Tkinter.
Sheldon
User
Beiträge: 9
Registriert: Dienstag 11. November 2008, 23:03

Liste aus Buttons deren commands einen Parameter übergeben

Beitragvon Sheldon » Sonntag 14. Dezember 2008, 16:34

Hallo,

ich wollte gerade eine Liste aus Buttons erstellen, da sie alle diegleiche aufgabe haben (wechsel des eigenen Textes; dazu bin ich übergegangen, da es keine Combobox gibt, ich schnell fertig werden muss und somit keine Zeit hab, mich in Gtk einzuarbeiten)
Quellcode sieht etwa so aus:

Code: Alles auswählen

t=["-","-","-","TextA","Text2","ABC","NochnTest"]    #Das sind nur Beispiele für Beschriftungen
for i in range(0,7,1):
   A.append(Button(MEs, text=t[i],relief=FLAT,command=Ado(i)))
   A[i].grid(column=30, row=10+10*i, sticky=W)


Das erstellen klappt ja problemlos, nur das dabei die commands Ado(i) schon ausgeführt werden und dann später im wirklich laufenden Programm nicht funktionieren!
Wie kann ich es machen, dass ich irgendwie in meiner Funktion rauskriege, welcher Button geklickt wurde?

Danke!

Gruß,
Sheldon
Gruß,
Sheldon
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Re: Liste aus Buttons deren commands einen Parameter übergeb

Beitragvon numerix » Sonntag 14. Dezember 2008, 16:39

Sheldon hat geschrieben:ich wollte gerade eine Liste aus Buttons erstellen, da sie alle diegleiche aufgabe haben (wechsel des eigenen Textes; dazu bin ich übergegangen, da es keine Combobox gibt,


Heißt zwar nicht so, dürfte aber das Richtige sein:

http://effbot.org/tkinterbook/optionmenu.htm
Sheldon
User
Beiträge: 9
Registriert: Dienstag 11. November 2008, 23:03

Beitragvon Sheldon » Sonntag 14. Dezember 2008, 16:44

OMG :D

1. Vielen Dank für die schnelle Antwort!!!

2. Vielen Dank für diese super Antwort ! ! ! ! !

Ich hab bisl rumgegooglet und irgendwo gelesen, dass es in tkinter keine Combobox gäbe, nur in diversen Erweiterungen. Und auch in Auflistungen der Widgets hab ich Optionmenu noch nicht gesehen.

Also nochmal 1000Dank, dass macht vieles einfacher und schneller!

Gruß,
Sheldon
Gruß,

Sheldon

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder