跑酷游戏中如何检测输入???
2 个赞
用 GetAsyncKeyState(ch)
函数,包含在 <windows.h>
头文件中
ch
表示要判断的按键
2 个赞
这个函数具体用法能不能告诉我?
1 个赞
GetAsyncKeyState(ch)
ch
可以是标准虚拟键码,如VK_UP
:向上箭头键、VK_ESCAPE
:Esc键等;
也可以是字母键、数字键等字符的 ASCII 值(0x进制)
一般只需要检查&0x8000
后的值,所以一般这样用:
if(GetAsyncKeyState(0x41)&0x8000){
//按下a键后的操作
}
需要注意的是:
GetAsyncKeyState(ch)
是全屏监听,
也就是说你输个密码、写个文档,GetAsyncKeyState(ch)
也能监听的到
可以参考我的贴子 GetAsyncKeyState()的全屏监听
写一个
//#include<windows.h>
//没加头文件的带上
bool window_up(){
return GetConsoleWindow()==GetForegroundWindow();
}//GetConsoleWindow()当前窗口句柄,GetForegroundWindow()最前面的窗口句柄
然后
if((GetAsyncKeyState(0x41)&0x8000)&&window_up()){//按下了a键
//按下a键后的操作
}
就行了
2 个赞