使用SDL2捕获击键
Using SDL2 for Capturing Key strokes
有2个关于使用SDL2的问题
- 我想在我的c++应用程序中捕获所有键盘输入。该应用程序是一个COM dll,将在后台运行,并将捕获所有输入。这个应用没有窗口,在这个例子中它能捕捉键盘输入吗?如果是,怎么做?
我看到过SDL2的例子,他们首先创建一个SDL窗口,然后捕获键盘输入。但我不想那样。我想要的是我的应用程序能够捕获所有的键盘输入由它自己。
- 如果我使用MFC创建自己的窗口,是否有可能将其附加到SDL2并在我的窗口聚焦时捕获所有键盘输入。同样,我不想创建SDL窗口。
你可以使用GetAsyncKeyState,它简单而快速,下面的代码向您展示了如何使用它。
if(GetAsyncKeyState('Q')){//if Q key has been clicked
//Do something
}
,这里是所有关键代码的列表http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731 (v = vs.85) . aspx
这个应用程序没有窗口,在这种情况下它能捕获键盘输入吗?
Not with SDL.
如果我使用MFC创建自己的窗口,是否有可能将其附加到SDL2并在我的窗口聚焦时捕获所有键盘输入?
听起来你可能会有一些运气的SDL_CreateWindowFrom()
您可以尝试使用带有SDL_WINDOW_HIDDEN标志的窗口。这样我假设你可以得到输入与sdl函数没有窗口弹出。
不知道这是不是你想要的,但我希望它能帮助你。
相关文章:
- 使用 SDL2 和SDL_image C++加载图像
- 如何在使用 SDL2 的 Eclipse 中构建 c++ 程序
- 如何使用 sdl2 快速绘制像素网格?
- 为什么在使用 SDL2 时仍然收到'undefined reference'链接器错误?
- MinGW 上的 g++ 在使用 SDL2 时无法保留行号信息
- 对多个类使用一个 SDL2 渲染器
- 如何在SDL2窗口上使用Cairo绘制一条白色直线
- 使用 SDL2 平滑网格移动?
- 使用 SDL2 操作硬件纹理
- 使用两个纹理 SDL2 显示视频
- 在使用 SDL2 从曲面创建的纹理上渲染纹理
- 将 glew 与 SDL2 一起使用
- 使用 FreeType 和 SDL2 渲染文本会生成白色方块而不是字符
- 使用SDL2 C 时,该应用程序无法正确启动(0xc000007b)错误
- 如何使用 SDL2 纹理作为更新画布?
- 是否可以将SDL2与智能指针一起使用
- 如何在 Ubuntu 16.10 上使用柯南和 SDL2 解决未定义的引用错误?
- 使用 SDL2 进行平滑(惯性)滚动?
- 如何使用 C/C++ 和 SDL2 将文件字体加载到 RAM 中?
- 让SDL2使用MinGW在Clion、Windows 10上工作