经过多次测试后,如果在C程序中使用 GetAsyncKeyState 按下Alt键,我就无法记录。 当我尝试这个时:
if (GetAsyncKeyState(VK_SHIFT))
// do something
它运作正常,但是当我尝试这个时
if (GetAsyncKeyState(VK_MENU))
// do something
它不起作用。
所以我的问题是"我如何记录ALT?"。
提前致谢
答案 0 :(得分:2)
我使用下面的代码找出完全适合GetAsyncKeyState
的任何键的值,我认为ALT
键为18。
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#if _WIN32_WINNT < 0x0500
#undef _WIN32_WINNT
#define _WIN32_WINNT 0x0500
#endif
#include <windows.h>
using namespace std;
int main ()
{
char i;
for(i=8; i<190; i++)
{
if(GetAsyncKeyState(i)== -32767)
{
cout<<int (i)<<endl;
}
}
return 0;
}