SDL PollEvent

Aus DGL Wiki
Wechseln zu: Navigation, Suche

SDL_PollEvent


Name

SDL_PollEvent - Ruft ein aktuell anstehenden Ereignis ab


Delphi-Spezifikation

function 'SDL_PollEvent(event : ^SDL_Event) :Integer;



Parameter

event Legt fest wo die Ereingisdaten gespeichert werden


Beschreibung

Ruft ein aktuell anstehenden Ereignis ab

Wenn event nicht nil ist, wird das nächste Ereignis von der Warteschlange entfernt, und in der angebenen SDL_Event Struktur gespeichert.



Rückgabewert

Gibt 1 zurück wenn es noch weite Ereignisse in der Warteschalnge sind, oder 0 falls keine weritern verfügbar sind.


Beispiel

(aus dem ersten SDL Tutorial)

var 
  event:SDL_Event; (* Event structure *)

{...}

(* Check for events *)
  while ( SDL_PollEvent( @event ) = 1 ) do
    begin
      case event.type_ of

        // Beenden der Applikation
        SDL_QUITEV :
        begin
          Done := -1;
        end;

        // Taste wurde gedrückt
        SDL_KEYDOWN :
        begin
          glHandleKeyPress( @event.key.keysym );
        
        // Fenster-Größe hat sich verändert
        SDL_VIDEORESIZE :
        begin
          surface := SDL_SetVideoMode( event.resize.w, event.resize.h, SCREEN_BPP, videoflags );

          if ( surface = nil ) then
          begin
            Log.LogError('Surface bei Größenänderung verloren: '+SDL_GetError,'EVENT_RESIZE' );
            Quit_App;
          end;

          glResizeWindow( event.resize.w, event.resize.h );
        end;

Siehe auch

SDL_Event, SDL_WaitEvent, SDL_PeepEvents