现在的位置: 首页 > 综合 > 正文

【EasyUse】关于键盘加速键的几点思考

2018年06月06日 ⁄ 综合 ⁄ 共 767字 ⁄ 字号 评论关闭

因为EasyUse程序要用到键盘加速,中间遇到了一些难题。汇总以便以后使用。

1、该在哪个地方截取消息(?)

关于这问题,认识还不够深刻。有一点可以确定,你在程序运行的CXXApp和CXXDlg的PreTranslateMessage()中截取消息函数肯定是不一样的。

一个是程序运行全过程都可以出发键盘操作的。

关于在对话框中出发消息,是在PreTranslateMessage()还是在OnKeyDown()中触发,还暂时没搞清楚。留以后搞清楚了去写。我是在PreTranslateMessage()中出发也没有成功

2、用什么判断触发了键盘操作。

1.可以检查MSG *pMsg变量的message变量判断消息的类型。当为WM_KEYDOWN时表示,有键被按下pMsg->wParam说明是什么键被按下。

具体的键的表示如下:

符号形式             十六进制形式        说明
VK_LBUTTON           01             鼠标左键
VK_RBUTTON            02             鼠标右键
VK_CANCEL             03          Control-break 过程
VK_MBUTTON          04                  鼠标中键
VK_BACK                 08           BACKSPACE 键
VK_TAB                    09              TAB 键
VK_CLEAR               0C                CLEAR 键
VK_RETURN              0D            ENTER 键
VK_SHIFT                 10            

抱歉!评论已关闭.