// 重写父类的PreTranslateMessage这个虚函数
BOOL CXXX::PreTranslateMessage(MSG* pMsg)
{
//键盘按下
if (pMsg->message==WM_KEYDOWN)
{
//处理函数
}
return CDialog::PreTranslateMessage(pMsg);
}
SHORT GetAsyncKeyState(int vKey);
参数vKey是某个按键的虚拟码。
功能 :
如果函数成功,则返回值指定此按键自上次上次调用GetAsyncKeyState后是否按下过,以及此按键当前是弹起的还是按下的。如果最高比特位被设置(就是被设为1),此按键就是按下的,如果最低位被设置,则此按键在上次调用GetAsyncKeyState之后(“又”)被按下过。但是你不应该依赖于之前的(按键)行为。
所以GetAsyncKeyState只能判断具体某一个键是否被按下。
#include
#include
using namesapce std;
int main(){
while(true){
if(kbhit()){
system("cls");
puts("键盘按键被按下");
}
}
return 0;
}
for(int i=0x01;i<=0x60;i++) //遍历每一个键
{
if(GetAsyncKeyState(i) & 0x8000) //执行的代码
}
不懂这个 啊