首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >缺少SDL_WINDOWEVENT

缺少SDL_WINDOWEVENT
EN

Stack Overflow用户
提问于 2012-04-11 13:55:34
回答 1查看 994关注 0票数 0

我使用的是最新版本的SDL,似乎缺少枚举SDL_WINDOWEVENT

在SDL_Events.h中,SDL_Events的定义是:

代码语言:javascript
复制
/** 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;

我知道有一个来自维基的SDL_WINDOWEVENT

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

//

编辑以澄清问题

如果您查看提供的链接,示例代码给出了

代码语言:javascript
复制
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
}

我的代码

代码语言:javascript
复制
    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
            }
        }
    }

错误C2065:'SDL_WINDOWEVENT‘:未声明的标识符错误窗口:’C2039‘:不是'SDL_Event’sdl_events.h(227)的成员:请参见'SDL_Event‘的声明错误C2228:'.event’的左侧必须具有类/结构/联合错误C2065:'SDL_WINDOWEVENT_MOVED‘:未声明的标识符

EN

回答 1

Stack Overflow用户

发布于 2012-04-12 00:49:20

我发现了我遇到的问题- Joachim和user1202136给了我线索

我弄错了我正在使用的SDL版本,这解释了为什么这些方法不存在。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10100611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档