SDL の最新バージョンを使用しています。enum SDL_WINDOWEVENT が見つからないようです
SDL_Events.h内で、SDL_Eventsの定義は次のとおりです:
/** 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;
wiki から SDL_WINDOWEVENT があることを知っています
// ------------------------------------------------ --------------------------------
問題を明確にするために編集
提供されたリンクを見ると、サンプルコードは次のようになります
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
}
マイコード
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
}
}
}
error C2065: 'SDL_WINDOWEVENT' : 宣言されていない識別子エラー C2039: 'window' : 'SDL_Event' のメンバーではありません sdl_events.h(227) : 'SDL_Event' の宣言を参照してください エラー C2228: '.event' の左側には class/ が必要です構造体/共用体エラー C2065: 'SDL_WINDOWEVENT_MOVED': 宣言されていない識別子