首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仅当单击按钮时才进行事件检查

问仅当单击按钮时才进行事件检查
EN

Stack Overflow用户
提问于 2012-11-06 11:09:20
回答 1查看 58关注 0票数 0

我有一个简单的测试脚本,它的意思是当用户在按钮的维度内单击时更改布尔值,但它不起作用。

我是这样做的:

代码语言:javascript
复制
while( SDL_PollEvent( &event ) ) {
        switch( event.type ){
            case SDL_QUIT: quit = true; break;
            case SDL_MOUSEMOTION: mouseX = event.motion.x; mouseY = event.motion.y; break;    
            case SDL_MOUSEBUTTONDOWN: click = true; 
        }
}
 Button btn_settings(btn_x,btn_y);
 if(btn_settings.IsIn(mouseX,mouseY)){
    btn_settings.RenderImg(menu,screen,"button_on.png","Settings");

    if(click){
        quit = true;
    }

 } else {
    btn_settings.RenderImg(menu,screen,"button.png","Settings");
 }

问题是,如果我点击任何地方,然后点击等于真,那么如果鼠标是退出按钮,它退出,即使按钮没有被按下时,over按钮。

我很困惑如何才能让它正常工作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-06 11:52:22

请尝试处理鼠标按键上的“单击”事件。我从未使用过SDL,但我怀疑已经定义了一个SDL_MOUSEBUTTONUP。否则,您不知道他们是想执行拖动操作,还是在松开鼠标按钮之前将鼠标移到其他地方。

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

https://stackoverflow.com/questions/13243777

复制
相关文章

相似问题

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