SDL_EVENTS如何制作
SDL_Events how to make it
我写了一个功能,可以帮助我用SDL
移动汽车if (events.type == SDL_KEYDOWN)
{
switch(events.key.keysym.sym)
{
case SDLK_UP:
y_val -=main_car_speed;
break;
case SDLK_DOWN:
y_val +=main_car_speed;
break;
case SDLK_RIGHT:
x_val +=main_car_speed;
break;
case SDLK_LEFT:
x_val -=main_car_speed;
break;
}
这很简单。但是我遇到了一个问题,当我向上压下。我的车只是继续前进,而不是继续前进,然后留在Sametime。如何解决此问题?
使用事件,如果按下'up'之后按'向左',您的程序将停止接收'up up'键压力的事件,而将仅接收"左"键 - 压力。如果您想知道键是否在任何时候按下按下,而不是对键首次按下时反应,则以下代码应为您提供帮助:
// inside main loop, after events have been handled
const Uint8* keystates = SDL_GetKeyboardState(NULL);
if (keystate[SDL_SCANCODE_UP]){
y_val -= main_car_speed;
}
if (keystate[SDL_SCANCODE_LEFT]){
x_val -= main_car_speed;
}
请查看SDL_GetKeyBoardState的文档以获取详细信息
相关文章:
- 如何在c++17中制作一个模板包装器/装饰器
- FFmpeg:制作一个应用程序比直接使用ffmepg更好吗
- 函数何时会在c++中包含stack_Unwind_Resume调用
- 如何制作一个将函数作为参数的类方法
- 如何从unique_ptr制作static_cast
- Python中的for循环与C++有何不同
- 下面是我为检测链接列表中的循环而制作的代码
- 如何使用gdb制作一个可以漂亮地打印每个对象的C++函数
- 从对象文件(.o)在macos上制作归档文件(.a文件)
- 如何制作无限制照明系统
- 我试图制作一个程序,要求用户输入问题和答案,但程序循环不正确
- 什么是(或如何制作)cpp中矢量的默认初始值设定项?
- 如何在QT中制作模态QProgressDialog?
- 如何制作指向模板函数的指针?
- 可视化 如何在 c++ 中制作特定大小的文件?
- 我可以制作指向智能指针的智能指针吗?
- 为我的 c++ 类介绍制作一个三角形分类器.我有几个问题
- 如何使用用户输入变量制作二维数组?
- 在C++中释放内存期间,迭代器与指针有何不同
- 我应该包含什么来制作 boost.python 扩展?