MFC程序注册热键

来源:互联网 发布:淘宝捡漏qq群 编辑:程序博客网 时间:2024/05/22 11:34

1、首先在.h文件中添加消息响应函数声明
 afx_msg LRESULT OnHotKey(WPARAM wParam,LPARAM lParam);
2、关联消息及响应函数
     BEGIN_MESSAGE_MAP()
  ON_MESSAGE(WM_HOTKEY,OnHotKey)
END_MESSAGE_MAP()

3、在初始化函数里注册热键
RegisterHotKey(m_hWnd,ID_HOTKEY,MOD_ALT,‘s’);  
//ID_HOTKEY是自己定义的一个ID宏
‘s'可以写成ASCII码

4、在消息响应函数里添加操作
LRESULT CMyTest::OnHotKey(WPARAM wParam,LPARAM lParam) 
 
 UINT Mod = (UINT) LOWORD(lParam); // key-modifier flags 
 UINT uVirtKey = (UINT) HIWORD(lParam); // virtual-key code 
 //判断响应了什么热键 
 if( MOD_CONTROL == Mod && ‘s’ == uVirtKey ) 
 
 AfxMessageBox(_T("你按下了组合键 ALT+ S"));
 
 else 
 AfxMessageBox(_T("你按下了未知热键")); 
 return 0; 
 }
0 0
原创粉丝点击