C++ MFC------ 快捷键

创建快捷键

该文讲解如何给dialog的菜单或者按钮添加快捷键。

1、局部快捷键

点击控件,右键点“属性”,在属性Caption后添加&Key,例如: &Y,即通过按Alt+Y即可触发快捷键,但是该方法只有控件focus时才能使用。

2、全局快捷键

快捷键创建函数:

BOOL WINAPI RegisterHotKey(

__in_opt HWND hWnd,

__in int id,

__in UINT fsModifiers,

__in UINT vk

);

其中,

hWnd:接收热键产生WM_HOTKEY消息的窗口句柄;

Id: 热键的标示符;

fsModifiers:  vk键一起按下的键;

Vk: 热键的虚拟键码;

 

注销快捷键函数:

BOOL WINAPI UnRegisterHotKey(

_in_opt HWND hWnd,

_in int id

);

 

响应消息: WM_HOTKEY

在BEGIN_MESSAGE_MAP{ ---- } END_MESSAGE_MAP间添加:

ON_MESSAGE(WM_HOTKEY,OnHotKey);

 

响应函数:

LRESULT OnHotKey(WPARAM wParam,LPARAM lParam);

参数:

wParam: 标志符-----即控件ID

lParam:

按键组合-------- LOWORD(lParam)  fsModifiers flags  

  HIWORD(lParam)    虚拟键码;

 

 

 

posted @ 2017-08-16 17:52  时光旅者  阅读(611)  评论(0编辑  收藏  举报