- 2
- 0
- 约3.36千字
- 约 17页
- 2017-05-15 发布于贵州
- 举报
windows序设计08
第4章 键盘及鼠标的消息响应 董本志 主要内容 键盘输入的响应 鼠标消息的响应 键盘与鼠标的组合输入 * 一、键盘输入的响应 1、程序实例 2、Windows程序是如何获得键盘输入的 键盘输入以消息的形式传递给程序的窗口消息处理程序。 Windows用八种不同的消息来传递不同的键盘事件。程序可以忽略其中至少一半的消息而不会有任何问题。并且,在大多数情况下,这些消息中包含的键盘信息会多于程序所需要的。处理键盘的部分工作就是识别出哪些消息是重要的,哪些是不重要的。 3、键盘消息 3.1 WM_KEYDOWN 和 WM_KEYUP LRESULT CALLBACK WindowProc( HWND hwnd, // handle to window UINT uMsg, // WM_KEYDOWN WM_KEYUP WPARAM wParam, // virtual-key code VK_F1 LPARAM lParam // key data ); 消息的处理过程主要是根据wParam中的键码进行处理。 例: switch (uMsg) { case WM_KEYDOWN: switch(wParam) { case VK_LEFT: //动作; return 0; } } VK_LEFT 25 LEFT ARROW key VK_UP 26 UP ARROW key VK_RIGHT 27 RIGHT ARROW key VK_DOWN 28 DOWN ARROW key (1)虚拟键码的定义 虚拟键码保存在WM_KEYDOWN、WM_KEYUP、WM_SYSKEYDOWN和WM_SYSKEYUP消息的wParam参数中。此代码标识按下或释放的键。 (2)lParam信息 在按键消息WM_KEYDOWN、WM_KEYUP中,wParam消息参数含有上面所讨论的虚拟键码,而lParam消息参数则含有对了解按键非常有用的其它信息。lParam的32位分为6个字段,如图所示。 (3)切换键信息 在处理按键消息时,可能需要知道是否按下了转换键(Shift、Ctrl和Alt)或开关键(Caps Lock、Num Lock和Scroll Lock)。通过调用GetKeyState函数,就能获得此信息。 SHORT GetKeyState( int nVirtKey); // virtual-key code nVirtKey VK_SHIFT shift键 VK_CONTROL CTRL键 VK_MENU ALT键 VK_CAPITAL CapsLock键 VK_LSHIFT 左shift键 VK_RSHIFT 右shift键 VK_LCONTROL VK_RCONTROL VK_LMENU VK_RMENU 3.2 字符消息 WM_CHAR (1)消息顺序 因为TranslateMessage函数从WM_KEYDOWN和WM_SYSKEYDOWN消息产生了字符消息,所以字符消息是夹在按键消息之间传递给窗口消息处理程序的。例如,如果Caps Lock未打开,而使用者按下再释放A键,则窗口消息处理程序将接收到如下表所示的三个消息: 如果按下Shift键,再按下A键,然后释放A键,再释放Shift键,就会输入大写的A,而窗口消息处理程序会接收到五个消息,如下表所示: 注意:Shift键本身不产生字符消息。 (2)WM_CHAR消息 LRESULT CALLBACK WindowProc( HWND hwnd, // handle to window UI
您可能关注的文档
- Windows序GDI绘图.ppt
- Windows序设计-3.ppt
- Windows序设计.doc
- windows序设计05.ppt
- windows序设计06.ppt
- windows序设计07.ppt
- windows序设计6.ppt
- Windows序设计—MFC编程和操作.ppt
- WINDOWS序设计之创建一个简单的Windows应用程序.ppt
- Windows序设计初步.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- DLT5375-2018 火力发电厂可行性研究报告内容深度规定.pdf VIP
- (2026年春新版)人教版八年级生物下册全册教案.doc
- ISO 5173 2009 金属材料焊缝的破坏性试验—弯曲试验(中文版).pdf VIP
- (高清版)DB13(J)∕T 8555-2023 县城特色风貌设计标准.pdf VIP
- 高级政治经济学(蔡继明)6.分工体系与广义价值决定.ppt VIP
- 潍坊亚星新材料有限公司500吨年六氯环三磷腈和500吨年苄索氯铵项目环境影响报告书.pdf VIP
- 最新2026年时事政治题单招及答案(夺冠).docx VIP
- 学校1530安全教育记录(2026年春季期).docx
- [会计理论葛家澍pdf]葛家澍和他的会计时代.docx VIP
- 解读GB 6441-2025《生产安全事故分类与编码》.pptx
原创力文档

文档评论(0)