SDL KeyboardEvent: Unterschied zwischen den Versionen
I0n0s (Diskussion | Beiträge) K (Parameter der SDL.pas angepasst) |
I0n0s (Diskussion | Beiträge) K (→Delphi-Spezifikation: Parameter der SDL.pas angepasst) |
||
| Zeile 7: | Zeile 7: | ||
<br> | <br> | ||
== Delphi-Spezifikation == | == Delphi-Spezifikation == | ||
| − | type ''' | + | type '''TSDL_KeyboardEvent''' = record |
''type_'' : Uint8; | ''type_'' : Uint8; | ||
''which'' : Uint8; | ''which'' : Uint8; | ||
Version vom 14. September 2005, 19:44 Uhr
Inhaltsverzeichnis
SDL_KeyboardEvent
Name
SDL_KeyboardEvent - Tastendruckereignis
Delphi-Spezifikation
type TSDL_KeyboardEvent = record
type_ : Uint8;
which : Uint8;
state : Uint8;
keysym : SDL_keysym;
end
Parameter
| type_ | SDL_KEYDOWN oder SDL_KEYUP |
|---|---|
| which | Der Tastaturgerätindex. |
| state | SDL_PRESSED oder SDL_RELEASED |
| keysym | Enthält Informationen über die gedrückte Taste |
Beschreibung
Meldet, wenn ein Taste gedrückt oder losgelassen wurde. Die Information, ob gedrückt oder losgelassen wurde, findet man in type_ und state, die Information über die Taste in keysym.
Hinweise
type_ und state enthalten die selbe Information, sie benutzen nur andere Werte dafür.
SDL_CAPSLOCK und SDL_NUMLOCK Tasten haben eine Sonderstellung. Hier informiert state nicht ob die Taste gedrückt wurde, sondern ob deren Funktion an oder aus ist.
Beispiel:
Beim ersten Drücken von Capslock wird ein SDL_PRESSED übermittelt, beim loslassen, ein SDL_RELEASED.
Beim nächsten Drücken aber ein SDL_RELEASED, weil die Funktion ausgeschaltet wurde.
Um mehrere KEYDOWN-Ereignisse bei gedrücktgehaltener Taste zu bekommen, muss man vorher mit SDL_EnableKeyRepeat ein Intervall festsetzen.
Siehe auch
SDL_Event, SDL_keysym, SDL_EnableKeyRepeat, SDL_EnableUNICODE