2012-04-11 12 views
0

ich die neueste Version von SDL bin mit der Enum SDL_WINDOWEVENT zu sein scheintSDL_WINDOWEVENT fehlt

innerhalb SDL_Events.h fehlt, die Definition von SDL_Events ist:

/** General event structure */ 
typedef union SDL_Event { 
    Uint8 type; 
    SDL_ActiveEvent active; 
    SDL_KeyboardEvent key; 
    SDL_MouseMotionEvent motion; 
    SDL_MouseButtonEvent button; 
    SDL_JoyAxisEvent jaxis; 
    SDL_JoyBallEvent jball; 
    SDL_JoyHatEvent jhat; 
    SDL_JoyButtonEvent jbutton; 
    SDL_ResizeEvent resize; 
    SDL_ExposeEvent expose; 
    SDL_QuitEvent quit; 
    SDL_UserEvent user; 
    SDL_SysWMEvent syswm; 
} SDL_Event; 

Ich weiß, es ist ein SDL_WINDOWEVENT aus das Wiki

http://wiki.libsdl.org/moin.cgi/SDL_WindowEvent?highlight=%28%5CbCategoryStruct%5Cb%29%7C%28CategoryEvents%29%7C%28SGStructures%29

// ------------------------------------- -------------------------------------------

Bearbeiten, um das Problem

zu klären Wenn Sie auf den darin enthaltenen Link aussehen, gibt der Beispielcode

void PrintEvent(const SDL_Event * event) 
{ 
    if (event->type == SDL_WINDOWEVENT) { 
     switch (event->window.event) { 
     case SDL_WINDOWEVENT_SHOWN: 
      fprintf(stderr, "Window %d shown", event->window.windowID); 
      break; 
// snip 
} 

My-Code

SDL_Event sdlEvent = {0}; 

    while(SDL_PollEvent(&sdlEvent)) 
    { 
     if(sdlEvent.type == SDL_QUIT)// || isTriggered(SDLK_ESCAPE)) 
      System::getEventManagerGlobal().broadcastEvent(Event("QUIT")); 
     if(sdlEvent.type == SDL_WINDOWEVENT) 
     { 
      if(sdlEvent.window.event == SDL_WINDOWEVENT_MOVED) 
      { 
       // snip 
      } 
     } 
    } 

Fehler C2065: 'SDL_WINDOWEVENT': nicht deklarierter Bezeichner Fehler C2039: 'Fenster': ist kein Mitglied von 'SDL_Event' sdl_events.h (227): siehe Deklaration von 'SDL_Event' Fehler C2228: links von '.Event' muss Klasse/Struktur/Union Fehler C2065 haben: 'SDL_WINDOWEVENT_MOVED': nicht deklarierter Bezeichner

+0

Mit "fehlende" meinst du SDL kompiliert nicht wegen eines undefinierten Symbols 'SDL_WINDOWEVENT'? –

+0

@ Xavier Ho, Genau, mein Projekt kompiliert nicht wegen eines undefinierten Symbols SDL_WINDOWEVENT. – aCuria

+1

Vielleicht ist dieses Ereignis veraltet? Oder noch nicht für SDL 2.0 implementiert? Es ist nicht einmal in der Gewerkschaft, die Sie in der Frage gepostet haben. –

Antwort

0

ich das Problem fand ich hatte - Joachim und user1202136 mich clued auf

I war falsch auf der Version von SDL, die ich verwende, was erklärt, warum die Methoden nicht existieren ..