1.为类添加消息ID
在需要要添加热键的类的头文件(.h)开始处添加如下代码:
#define WM_MYHOTKEY WM_USER+1000
//在这里我们需要知道为了防止用户定义的消息ID与系统的消息ID冲突,MS(Microsoft)定义了一个宏WM_USER,小于WM_USER的ID被系统使用,大于WM_USER的ID被用户使用。
2.为类手动添加WM_HOTKEY消息映射
在需要要添加热键的类的头文件(.h)的DECLARE_MESSAGE_MAP()前添加:
afx_msg LONG OnHotKey(WPARAM wParam,LPARAM lParam);
在需要要添加热键的类的源文件(.cpp)的BEGIN_MESSAGE_MAP(CHotKeyDlg,CDialog)宏和END_MESSAGE_MAP()宏之间添加:
ON_MESSAGE(WM_HOTKEY,OnHotKey)
3.在类的初始化函数中调用RegisterHotKey()函数,注册快捷键
打开类向导,为我们的类添加一个初始化函数,并在函数中添加注册快捷键的代码
BOOL hotkey::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
if(RegisterHotKey(GetSafeHwnd(),WM_