小标
2018-07-23
来源 :
阅读 1712
评论 0
摘要:本文主要向大家介绍了VC编程的系统热键,通过具体的内容向大家展示,希望对大家学习VC编程有所帮助。
本文主要向大家介绍了VC编程的系统热键,通过具体的内容向大家展示,希望对大家学习VC编程有所帮助。
系统环境:Windows 7
软件环境:Visual Studio 2008 SP1
本次目的:实现全局热键的效果
我们知道,通常在聊QQ的时候有新信息到来的时候,同时按下Ctrl+Alt+Z就能弹出新消息的聊天窗口。现在让我们来实现系统热键。
步骤一:建立一个基于对话框的工程,名称任意;
步骤二:在对话框头文件的消息映射函数 里面添加以下函数:
[cpp] view plain copy
1. afx_msg LRESULT OnHotKey(WPARAM wParam,LPARAM lParam);
步骤三:在对话框实现文件CPP里面在BEGIN_MESSAGE_MAP 和END_MESSAGE_MAP 之间加入
[cpp] view plain copy
1. ON_MESSAGE(WM_HOTKEY,OnHotKey)
步骤四:在对话框初始化函数OnInitDialog() 里面注册热键
[cpp] view plain copy
1. RegisterHotKey(m_hWnd,1001,MOD_CONTROL|MOD_SHIFT|MOD_ALT,VK_F10);
步骤五:对函数OnHotKey() 函数的实现
[cpp] view plain copy
1. LRESULT CTestDlg::OnHotKey(WPARAM wParam,LPARAM lParam)
2. {
3. if(wParam == 1001)
4. {
5. AfxMessageBox(_T("Ctrl+Shift+Alt+F10 Pressed!"));
6. }
7. return true;
8. }
步骤六:销毁。重载OnDestroy ()函数
[cpp] view plain copy
1. void CTestDlg::OnDestroy()
2. {
3. CDialog::OnDestroy();
4. UnregisterHotKey( m_hWnd, 1001);
5. }
好了,完成。下面看下用到的两个重要函数:
[cpp] view plain copy
1. BOOL RegisterHotKey(
2. HWND hWnd, //窗口句柄
3. int id, //热键标识符
4. UINT fsModifiers, //按键参数
5. UINT vk //热键的虚拟键码
6. );
对于fsModifiers 参数有以下的选项:
MOD_ALT Either ALT key must be held down.
MOD_CONTROL Either CTRL key must be held down.
MOD_SHIFT Either SHIFT key must be held down.
MOD_WIN Either WINDOWS key was held down. These keys are labeled with the Microsoft Windows logo.Keyboard shortcuts that involve the WINDOWS key are reserved for use by the operating system.
[cpp] view plain copy
1. BOOL UnregisterHotKey(
2. HWND hWnd, //句柄
3. int id //热键标识符
4. );
本文由职坐标整理并发布,了解更多内容,请关注职坐标编程语言VC/MFC频道!
喜欢 | 0
不喜欢 | 0
您输入的评论内容中包含违禁敏感词
我知道了

请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号