SDL KeyboardEvent: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
K (Parameter der SDL.pas angepasst)
K (Delphi-Spezifikation: Parameter der SDL.pas angepasst)
Zeile 7: Zeile 7:
 
<br>
 
<br>
 
== Delphi-Spezifikation ==
 
== Delphi-Spezifikation ==
  type '''SDL_KeyboardEvent''' = record
+
  type '''TSDL_KeyboardEvent''' = record
 
         ''type_''  : Uint8;
 
         ''type_''  : Uint8;
 
         ''which''  : Uint8;
 
         ''which''  : Uint8;

Version vom 14. September 2005, 19:44 Uhr

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