Windows系统C语言检测键盘的状态

时间:2021-02-19 17:02:49
GetKeyState是一个Windows API函数,该函数检取指定虚拟键的状态。该状态指定此键是UP状态,DOWN状态,还是被触发的(开关每次按下此键时进行切换)。
函数原型SHORT GetKeyState(int nVirtKey);
函数说明
  nVrtKey:定义一虚拟键。若要求的虚拟键是字母或数字(A~Z,a~z或0~9),nVirtKey必须被置为相应字符的ASCII码值,对于其他的键,nVirtKey必须是一虚拟键码。若使用非英语键盘布局,则取值在ASCIIa~z和0~9的虚拟键被用于定义绝大多数的字符键。例如,对于德语键盘格式,值为ASCII0(OX4F)的虚拟键指的是"0"键,而VK_OEM_1指"带变音的0键"
键盘的每个键盘都有自己的值,对于一些特殊的键盘,小伙伴们可以自行百度搜索




检测下箭头键

int down=0;

down = GetKeyState(VK_DOWN);//获取下箭头键状态   如果down>0 表示被松开  down<0 表示被按下
		if (down < 0)      //如果下箭头键被按下   
		{
		//内容
		}





如果检测数字或者字母键代码如下:

int key=0;

key= GetKeyState('A');//获取A键状态   如果key>0 表示被松开  key<0 表示被按下
		if (down < 0)      //如果A键被按下   
		{
		//内容
		}