windows编程常用键盘消息命令

windows编程常用键盘消息命令

ID:34727138

大小:54.78 KB

页数:10页

时间:2019-03-10

windows编程常用键盘消息命令_第1页
windows编程常用键盘消息命令_第2页
windows编程常用键盘消息命令_第3页
windows编程常用键盘消息命令_第4页
windows编程常用键盘消息命令_第5页
资源描述:

《windows编程常用键盘消息命令》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、windows编程常用键盘消息命令1.扫描码与虚拟码 键盘从最早的83键发展到当今流行的101键,虽然增加了许多键,但按键的基本操作保持不变,即按下一个键或释放一个键。按下一个键或释放一个键时,键盘设备就产生一个扫描码(ScanCode),这些扫描码是键盘的物理码,每一个扫描码可以惟一地确定一个按键。不同厂家生产的键盘,其扫描码有可能是不一样的,即它是与设备相关的。键盘上的每个键对应两个不同的扫描码,当键被按下时,产生的扫描码的最高位为0,当键被释放时,产生的扫描码的最高位为1。为了实现与设备无关的键盘操作,Windows系统中定义了一

2、个虚拟键盘。虚拟键盘不但包括了目前键盘所使用的标准键集,还定义了一些目前键盘上所没有的虚拟键,以便以后进行扩充。在虚拟键盘上,每个键对应一个虚拟码(VirtualKeyCode)。Windows的键盘驱动程序(Keybord.drv)将各种不同的物理键盘映射到同一个虚拟键盘,程序员处理的是这惟一的虚拟键。这样,用户所编写的有关键盘的程序就与具体的键盘设备无关了。表9.3所示为常用的虚拟键代码。 表9.3常用的虚拟键代码 符号常量对应按键符号常量对应按键VK_LBUTTON鼠标左键VK_0~VK_90~9键VK_RBUTTON鼠标右键VK

3、_A~VK_ZA~Z键VK_BACK退格键(BACKSPACE键)VK_NUMPAD0~9数字小键盘0~9VK_RETURN回车键VK_MULTIPY乘号键VK_SHIFTShift键VK_ADD加号键VK_CAPITALCapsLock键VK_SUBTRACT减号键VK_ESCAPEEsc键VK_F1~VK_F24F1~F24键VK_SPACESpaceBar键VK_NUMLOCKNumLock键VK_PRIORPageUP键VK_TAB制表键(Tab)VK_NEXTPageDown键VK_PAUSEPause键VK_ENDEnd键V

4、K_INSERTIns键VK_HOMEHome键VK_DELETEDel键VK_LEFTLeftArrow(←)键VK_DOWNDownArrow(↓)键就像用户移动或单击鼠标键时Windows会给应用程序发送消息一样,当用户敲击键盘时,Windows也同样会给应用程序发送消息,鼠标消息和键盘消息的区别在于鼠标消息被发送到鼠标所处的窗口,而键盘消息总是被发送给有输入焦点的窗口,通常是屏幕上最前面的窗口。Windows的键盘消息分为击键消息和字符消息两类。 2.击键消息 对于键盘上的所有键,每次按下或释放时,都会产生击键消息。击键消息主要

5、有4种,分别为WM_KEYDOWN(键按下)、WM_SYSKEYDOWN(系统键按下)、WM_KEYUP(弹起)、WM_SYSKEYUP(系统键弹起)。WM_SYSKEYDOWN和WM_SYSKEYUP消息称做系统击键消息,它们由F10键或含有Alt键的击键组合产生,用于快速激活菜单及菜单中的选项、切换当前窗口和其他系统消息。Windows使用默认处理函数DefWindowProc()来对这类消息进行处理,应用程序常常忽略它们。WM_KEYDOWN和WM_KEYUP消息称做非系统击键消息,用户每按一个非系统键,都会产生这类消息,它是应用

6、程序中重点处理的消息。在一些游戏程序中,用户常常按动“←”、“↑”、“→”、“↓”键来实现窗口中图形的移动,开发商处理的键盘消息就是这些非系统击键消息。当应用程序不处理时,由默认的处理函数DefWindowProc()对这类消息进行处理。 3.字符消息 当按了键盘上的任何一个键时,Windows都会向窗口函数发送击键消息,对于那些产生可显示字符的操作,Windows还会向窗口函数发送字符消息。因此,字符消息不是由硬件产生的,而是由可产生显示字符的击键消息转换而来的。可以这样认为:当按了任何键时都产生击键消息,而当按了那些可显示的字符键时

7、,除了发送击键消息外,还发出字符消息。因此,当按了可显示字符A键时,将产生WM_KEYDOWN、WM_CHAR、WM_KEYUP消息:当按了不可显示字符Shift键时,将产生WM_KEYDOWN和WM_KEYUP消息。由于用户击键方式和击键次序的不同,窗口函数所接收到的消息数目和次序也不相同。表9.4列出了一些击键与消息的对应关系。表9.4击键与消息的对应关系 击键方式消息次序wParam参数按下A键,然后释放WM_KEYDOWN虚拟键AWM_CHARA的ASCII码WM_KEYUP虚拟键A先按Shift键,再按A键,然后释放A键,最后

8、释放Shift键WM_KEYDOWN虚拟键VK_SHIFTWM_KEYDOWN虚拟键AWM_CHARA的ASCII码WM_KEYUP虚拟键AWM_KEYUP虚拟键VK_SHIFT按下A键持续一段时间WM_K

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。