什么是GetKeyboardState

核心提示GetKeyboardState属于计算机函数外文名GetKeyboardState类别计算机函数功能将虚拟键的状态拷贝到缓冲区原型BOOL GetKeyboardStateGetKeyboardState参数说明IpKeyState:指向

最佳答案:

GetKeyboardState属于计算机函数

详情介绍

GetKeyboardState属于计算机函数

外文名
GetKeyboardState
类别
计算机函数
功能
将虚拟键的状态拷贝到缓冲区
原型
BOOL GetKeyboardState

GetKeyboardState参数说明

IpKeyState:指向一个256字节的数组,数组用于接收每个虚拟键的状态。

返回值:若函数调用成功,则返回非0值。若函数调用不成功,则返回值为0。若要获得更多的错误信息,可以调用GetLastError函数。

GetKeyboardState其他信息

应用程序可以调用该函数来检取所有虚拟键的当前状态。当键盘消息被从该线程的消息队列中移去时,虚拟键的状态发生改变。当键盘消息被发送到该线程的消息队列中,或者,当键盘消息被发送到其他线程的消息队列或被从其他线程的消息队列中检取到时,虚拟键的状态不发生改变。(例外:通过AttachThreadlnput连接的线程共享同一键盘状态。)当函数返回时,由lpKeyState参数指向的每一个数组成员中都包含了一个虚拟键的状态数据。若最高位被置为1,则该键处于down状态;否则,该键处于up状态。若最低位被置为1,则该键被触发。当一个键被打开时称之为被触发,如capslock键。若最低位被置为0,该键被关闭且不被触发。一个触发键也键盘上的指示灯(如果有的话)在该键被触发时点亮,在不被触发时灭掉。若要检取单个虚拟键的状态信息,可以调用GetKeyState函数。若要检取任一虚拟键的当前状态,而不管相应的键盘消息是否已从消息队列中检取到,可以使用GetAsyncKevState函数。应用程序可以使用虚拟键码常数VK_SHIFT,VK_CONTROL和VK_MENU作为IpKeyState所指向的数组的下标。这样给出的Shift,Ctrl,Alt键的状态不区分左右键。应用程序也可以使用如下的虚拟键码常数作为以上键的区分左右键的下标:

VK_LSHIFT,VK_RSHIFT,VK_LCONTROL,VK_RCONTROL;VK_LMENU,VK_RMENU仅当应用程序调用GetKeyboardState;SetKeyboardState,GetAsyncKeyState,GetKeyState和MapVirtualKey函数时,才可用这些区分左右键的常数。

速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;头文件:winuser.h;库文件: USer32.lib。

 
友情链接
鄂ICP备19019357号-22