C++ Code_HotKey
|
Code::使用HotKeyCtrl定义一个系统热键 |
|
// 关联HotKeyCtrl控件变量 m_HotKey1
![]() BEGIN_MESSAGE_MAP(CXyzDlg, CDialog)
//{{AFX_MSG_MAP(CXyzDlg) ON_WM_SYSCOMMAND() ON_MESSAGE(WM_HOTKEY,OnHotKey) ON_WM_PAINT()
ON_WM_QUERYDRAGICON() ON_BN_CLICKED(IDC_BUTTON1,
OnButton1) ON_WM_CLOSE()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
void CXyzDlg::OnButton1()
{
// TODO: Add your control notification handler code here
WORD m_wVkCode;
WORD m_wModifier;
m_HotKey1.GetHotKey(m_wVkCode, m_wModifier);
AfxGetMainWnd()->SendMessage(WM_SETHOTKEY,(WPARAM)MAKEWORD(m_wVkCode,m_wModifier));
UINT mod = 0;
if ( m_wModifier&HOTKEYF_ALT ) mod|=MOD_ALT;
if ( m_wModifier&HOTKEYF_CONTROL ) mod|=MOD_CONTROL;
if ( m_wModifier&HOTKEYF_SHIFT ) mod|=MOD_SHIFT;
if ( m_wModifier&HOTKEYF_EXT ) mod|=MOD_WIN;
m_wModifier=mod;
::RegisterHotKey(AfxGetMainWnd()->m_hWnd, 111 , m_wModifier, m_wVkCode);
}
void CXyzDlg::OnHotKey(WPARAM wParam, LPARAM lParam)
{
switch (wParam)
case 111:
AfxMessageBox("热键响应成功!");
// CDialog::OnHotKey(wParam,lParam);
}
void CXyzDlg::OnClose()
{
// TODO: Add your message handler code here and/or call default
::UnregisterHotKey(m_hWnd,111);
CDialog::OnClose();
}
效果图:
|
C++ Code_HotKey的更多相关文章
随机推荐
- [转]linux系统磁盘分区之parted
转自:http://blog.csdn.net/h249059945/article/details/12668793 对于linux的分区通常可以使用fdisk命令工具和parted工具对于分区表通 ...
- mac 版本的 Google 网盘 走代理
开启surge Mac版 设置系统代理 127.0.0.1,192.168.0.0/16,10.0.0.0/8,172.16.0.0/12,localhost,*.local 理论上可以使用cow来代 ...
- PHP 优化详解
笔者收集的这些技巧来源较广,完整性不能保证. 由于数量较多,这些优化技巧没有经过测试.请各位看官在使用之前自行测试,毕竟这些技巧是否能派上用场,还是需要由PHP所在的独特环境所决定的. 目录索引 找到 ...
- PHP.ini 配置文件解析
[PHP] ;;;;;;;;;;;;;;;;;;;; About php.ini ;;;;;;;;;;;;;;;;;;;;; PHP's initialization file, generall ...
- 精品手游《里奥的财富》高清版逆向移植家用机与PC平台(转)
冒险动作游戏<里奥的财富>于去年10月登陆移动平台,曾荣获App Store“年度优秀游戏”.开发商宣布将推出其HD版本,近期会陆续登陆PS4.PC.MAC.Xbox One平台. 由瑞典 ...
- 英语之idiom
1 quick and dirty = Done or constructed in a hasty, approximate, temporarily adequate manner, but no ...
- 前N个自然数的随机置换
来自:[数据结构与算法分析——C语言描述]练习2.7 问题描述:假设需要生成前N个自然数的一个随机置换.例如,{4,1,2,5,2}和{3,1,4,2,5}就是合法的置换,但{5,4,1,2,1}却不 ...
- Spark RDD概念学习系列之为什么会引入RDD?(一)
为什么会引入RDD? 我们知道,无论是工业界还是学术界,都已经广泛使用高级集群编程模型来处理日益增长的数据,如MapReduce和Dryad.这些系统将分布式编程简化为自动提供位置感知性调度. ...
- RedHat/CentOS6.4---永久关闭iptables
今天无意中发现一个现象,当我关闭iptables并且停止iptables服务,但是总会有一些出奇的事情发生,当我再次启动系统,查看iptables状态,iptables又自动开启,很是无奈啊!在Red ...
- hdu 2899 Strange fuction
http://acm.hdu.edu.cn/showproblem.php?pid=2899 Strange fuction Time Limit: 2000/1000 MS (Java/Others ...

