Tastaturcodes abfragen ?

Fragen zu Tkinter.
Benutzeravatar
snakeseven
User
Beiträge: 405
Registriert: Freitag 7. Oktober 2005, 14:37
Wohnort: Berlin
Kontaktdaten:

Tastaturcodes abfragen ?

Beitragvon snakeseven » Dienstag 29. November 2005, 08:51

Hallo,
beim Einbinden von Tastaturevents treffe ich auf folgendes Phänomen:

root.bind_all("<+>", playnext) funktioniert.

root.bind_all("<->", playprev) führt zu folgender Fehlermeldung:

TclError: no event type or button # or keysym

---------------------------------------------------------------------
weitere Fragen:

Wie frage ich in root.bind_all() den Tastaturcode ab ?

Wie frage ich bei den Tasten die eine "0" voransenden (Cursortasten) den Code, also das zweite Byte ab ?

Danke wie immer
jochim
User
Beiträge: 32
Registriert: Montag 5. August 2002, 20:47
Wohnort: Dortmund

Beitragvon jochim » Dienstag 29. November 2005, 11:01

hi,

nimm statt <-> den keysymwert, also <minus>. Hier noch ein Stück Code welches die Tastaturwerte ausgibt (auf der Kommandozeile!):

Code: Alles auswählen

import Tkinter
root = Tkinter.Tk()
root.title("Keysym Logger")
   
def reportEvent(event):
    print 'keysym=%s, keysym_num=%s, keycode=%s' % (event.keysym, event.keysym_num, event.keycode)
   
text  = Tkinter.Text(root, width=20, height=5, highlightthickness=2)
   
text.bind('<KeyPress>', reportEvent)
   
text.pack(expand=1, fill="both")
text.focus_set()
root.mainloop()


Die Werte für "keysym" können mit der bind -Funktion benutzt werden.

Weiteres dazu unter http://infohost.nmt.edu/tcc/help/pubs/tkinter/key-names.html.

Gruß Jochim


ps: dieser Beitrag gehört eigentlich zur Rubrik Tkinter

(mawe) Dein Wunsch ist mir natürlich Befehl :D *schieb*
Edit (Leonidas): Code zusätzlich noch in Python-Tags gesetzt.
Benutzeravatar
snakeseven
User
Beiträge: 405
Registriert: Freitag 7. Oktober 2005, 14:37
Wohnort: Berlin
Kontaktdaten:

Beitragvon snakeseven » Donnerstag 1. Dezember 2005, 00:16

Danke, funktioniert super - Maus ade !

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder