跑酷游戏中如何检测输入???

跑酷游戏中如何检测输入???

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 个赞