ttk.Combobox focusout

Fragen zu Tkinter.
lernePython
User
Beiträge: 12
Registriert: Freitag 3. Februar 2017, 20:01

ttk.Combobox focusout

Beitragvon lernePython » Sonntag 12. Februar 2017, 15:50

Ich habe das Problem, dass ich bei einer ttk.Combobox immer dann eine Aktion benötige, wenn ich das entsprechende Item aus der Liste ausgewählt habe. Leider funktionieren die versuchten Dinge bislang nicht:
focusin - war klar, dass es das falsche liefert
focusout - liefert nur einmalig ein Ergebnis - beim Wechsel der ITems wird das Ergebnis nicht "erneuert"
Kann mir da jemand helfen? Vielen Dank.

  1. def ausgabe():
  2.     a = box.get()    
  3.     print (a)
  4.  
  5. box = ttk.Combobox(main, validate = "focusout", validatecommand = ausgabe)
  6. box.grid()
Benutzeravatar
BlackJack
Moderator
Beiträge: 32226
Registriert: Dienstag 25. Januar 2005, 23:29
Wohnort: Berlin
Kontaktdaten:

Re: ttk.Combobox focusout

Beitragvon BlackJack » Sonntag 12. Februar 2017, 16:12

Um mal die Dokumentation zu zitieren: „The combobox widget generates a <<ComboboxSelected>> virtual event when the user selects an element from the list of values.“
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it. — Brian W. Kernighan
lernePython
User
Beiträge: 12
Registriert: Freitag 3. Februar 2017, 20:01

Re: ttk.Combobox focusout

Beitragvon lernePython » Sonntag 12. Februar 2017, 16:22

? - a virtual event ? - ich steh im Wald :?
Wie sieht dann die Übergabe eines Kommandos aus?
Benutzeravatar
BlackJack
Moderator
Beiträge: 32226
Registriert: Dienstag 25. Januar 2005, 23:29
Wohnort: Berlin
Kontaktdaten:

Re: ttk.Combobox focusout

Beitragvon BlackJack » Sonntag 12. Februar 2017, 17:08

Siehe auch Bindings and Events und vielleicht auch mal eine der in der `Tkinter`-Moduldokumentation verlinkten anderen Quellen wie die Referenz von New Mexico Tech oder das Tkinter-Buch von Effbot im Netz.
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it. — Brian W. Kernighan

Zurück zu „Tkinter“

Wer ist online?

Mitglieder in diesem Forum: stefanxfg