快捷键一般都是使用在CMenu中,所以有的Menu创建过程(此处省略)。
1、切换到资源视图->添加资源->Acclerator
2、在ID中选择需要添加快捷键的控件ID,修饰符中选择Ctrl等,键中选择使用的快捷键,类型默认。快捷键的键值可查询,每一个键对应的键值在下面的网页中有给出:
http://blog.csdn.net/kathywind/article/details/5979029。
在表中找到相应的键值,添加加进去。
添加完成了Acclerator资源后,需要将资源添加到类中去。
3、在xxxxDlg.h头文件中添加一个快捷键资源的成员变量:
HACCEL m_hAccel;
4、需要在xxxDlg.cpp中OnInitDialog中加入:
m_hAccel=::LoadAccelerators(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDR_ACCELERATOR1)); //IDR_ACCELERATOR1就是刚才的加速键资源ID;
5 然后需要重载PreTranslateMessage函数,实现对快捷键功能。重载代码如下:
BOOL CAboutDlg::PreTranslateMessage(MSG* pMsg)
{
if (m_hAccel)
{