无法轮询SDL中的鼠标单击事件
Unable to poll for mouse click event in SDL
我有代码
int userinput()
{
while(hasquit == false)
{
while ( SDL_PollEvent(&event) )
{
if ( event.type == SDL_QUIT )
{
hasquit = true;
}
if ( event.type == SDL_KEYDOWN )
{
if ( event.key.keysym.sym == SDLK_ESCAPE )
{
hasquit = true;
}
if(event.type == SDL_MOUSEBUTTONDOWN)
{
if(event.button.button == SDL_BUTTON_LEFT)
{
//do something
}
}
}
}
}
}
是我从这些教程中复制的一个事件结构。我可以得到SDL_QUIT和SDLK_ESCAPE事件,但是如果我尝试让
hasquit = true
使用任意一个鼠标按钮if语句,什么也没发生
你有
if(event.type == SDL_MOUSEBUTTONDOWN)
内if ( event.type == SDL_KEYDOWN )
块。
这个应该可以工作:
int userinput()
{
while(hasquit == false)
{
while ( SDL_PollEvent(&event) )
{
if ( event.type == SDL_QUIT )
{
hasquit = true;
}
if ( event.type == SDL_KEYDOWN )
{
if ( event.key.keysym.sym == SDLK_ESCAPE )
{
hasquit = true;
}
}
if(event.type == SDL_MOUSEBUTTONDOWN)
{
if(event.button.button == SDL_BUTTON_LEFT)
{
//do something
}
}
}
}
}
相关文章:
- 有没有办法区分Qt小部件是通过鼠标单击还是通过按表键获得焦点?
- 如何在QSplashScreen中禁用鼠标单击
- C++鼠标单击时的屏幕截图不起作用
- 标签检测鼠标单击 c++
- 使用 SFML 在矩形的矢量中查找鼠标单击量
- 如何使用鼠标单击选择多个 QLabel 对象?
- 鼠标单击 OpenGL 时无法围绕其自己的中心旋转对象
- 在鼠标单击Qt时将信号从子级发送到父级
- 如何在后台模拟鼠标单击到 DirectX 应用程序?
- 在OpenGL中,如何将鼠标跟随更改为鼠标单击,拖动并移动释放?
- 使用setWindowShookex()阻止Windows鼠标单击
- 将鼠标单击发送到以管理员身份运行的DirectX游戏
- 如何检查鼠标单击位置是必需的应用程序
- 在调整大小窗口时,如何使用鼠标单击来获取图像的坐标
- 如何在FLTK中使用两个不同的小部件使用键盘箭头和鼠标单击
- 通过鼠标单击绘制多边形
- 鼠标单击背景窗口,而无需移动鼠标C
- 如何在 C++ 中显示通知,当鼠标单击可编辑文本框时
- 发送鼠标单击消息
- 在使用发送输入 API 模拟鼠标单击时是否需要引入延迟