nach dem KeyEvent

Plattformunabhängige GUIs mit wxWidgets.
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

nach dem KeyEvent

Beitragvon nkoehring » Donnerstag 17. Januar 2008, 00:32

Hallo...

nachdem ich nun erfolgreich KeyEvents abfange und verarbeite, stoße ich auf ein neues Problem:

Ich bekomme nicht das was ich wirklich druecke, sondern nur die reine Taste und kann die Modifier abfragen. Drueck ich also "a", bekomme ich eine 65. Das entspricht der Ordinalzahl von "A". Soweit so gut. Druecke ich nun "Shift+a" bekomme ich das gleiche und kann auch abfragen, ob Shift gedrueckt wurde. Ich weiß also:

"A" ohne Shift => "a"
"A" mit Shift => "A"

Kein Problem... waeren da nicht zB die Sonderzeichen und die Moeglichkeit verschiedener Tastaturlayouts. Denn druecke ich eine "1" bekomme ich auch den Ordinalwert 49. Druecke ich "Shift+1" bekomme ich wieder eine 49. Wer aber sagt mir, dass es bei jedem Tastaturlayout die Eins ist, bei der das Ausrufezeichen steckt?
Schon bei den Anfuehrungsstrichen wird das problematisch. Die sind im deutschen auf "Shift+2", im Englischen ganz woanders!

Was tun?
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Re: nach dem KeyEvent

Beitragvon gerold » Donnerstag 17. Januar 2008, 07:56

Hallo nkoehring!

Das ist leider etwas kniffliger... Suche in der Demo nach "KeyEvents".

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Beitragvon nkoehring » Freitag 18. Januar 2008, 00:07

Hi gerold,

die entsprechende Demo ist sehr hilfreich gewesen, vielen Dank! Nun steht meinem Editor nichts mehr im Wege... der Kommandointerpreter funktioniert sogar schon 8) :) 8)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder