Bind

Fragen zu Tkinter.
Antworten
sirroseide
User
Beiträge: 14
Registriert: Montag 31. Januar 2005, 15:44
Wohnort: Berlin

Ich habe folgendes Problem.

Ich möchte, dass sich mein Fenster schließt, wenn die Return-Taste gedrückt wird.
fenster.bind('??????',fenster.destroy)
Gibts vielleicht ne Liste über die ganzen Bind-Anweisungen? :?
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!

Manchmal ist das Naheliegendste das Richtige :wink:

Code: Alles auswählen

from Tkinter import *

root = Tk()
root.bind('<Return>', lambda event: root.quit())
root.mainloop()
EDIT:
Hier hast noch Info zu Events und eine nette Liste zu Bindings: Link

Gruß, mawe
sirroseide
User
Beiträge: 14
Registriert: Montag 31. Januar 2005, 15:44
Wohnort: Berlin

Danke!

Aber wenn ich <Return> verwende und die Entertaste drücke ist es so als ob ich die Entertaste drücke. Keine Ahnung warum. Ist meine Tastatur kaputt?
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

sirroseide hat geschrieben:[...]die Entertaste drücke ist es so als ob ich die Entertaste drücke. Keine Ahnung warum. Ist meine Tastatur kaputt?
Kling nicht so, denn bei meiner Tastatur ist es auch immer so, dass wenn ich Enter drücke Enter rauskommt. SCNR

Du kannst ja das Problem näher beschreiben...
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!

Code: Alles auswählen

from Tkinter import *

def click(event):
    print event.keysym

root = Tk()
root.bind('<KeyPress>', click)
root.mainloop()
Starte mal dieses Snippet und drück Deine Enter-Taste. Das was auf der Konsole ausgegeben wird, ist das Keysymbol der Taste, und genau das schreibst Du dann statt KeyPress.

PS: Bei mir ist es KP_Enter.

Gruß, mawe
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

mawe hat geschrieben:PS: Bei mir ist es KP_Enter.
Bei mit einfach nur Enter.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi Leonidas!

Und was kommt wenn Du Return drückst?

Gruß, mawe
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Aje, ich bekomm jetzt doch bei beiden Return, hab mich wohl verschrieben. Also kann man soweit ich sehe, damit nicht die beiden Tasten auseinanderhalten (zumindest nicht unter Windows).
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi Leonidas!

Ich fürchte nicht. Kann man unter Windows nicht das Tastaturlayout ändern?

Gruß, mawe
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Doch. Man kann sich sogar ein eigenes bauen, auf dem man a auf b setzt, aber das ist wohl kaum eine Lösung.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
sirroseide
User
Beiträge: 14
Registriert: Montag 31. Januar 2005, 15:44
Wohnort: Berlin

Also kann man unetr Windows Return und Enter nicht trennen?
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!

Wenn bei Dir auch beide mal Return erscheint, fürchte ich nicht :?
Das einzige was mir noch einfällt, ist der Keycode. Versuch mal bei meinem Snippet keycode statt keysym.

Code: Alles auswählen

print event.keycode
Wenn da auch dasselbe rauskommt, weiß ich auch nichts mehr.

Gruß, mawe
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beide male 13, was ja auch den ANSI COde (oder war es ASCII?) entspricht. Also so kommt man nicht weiter.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten