VC对话框的菜单添加快捷键

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VC对话框的菜单添加快捷键相关的知识,希望对你有一定的参考价值。

要在VC对话框上,为菜单添加快捷键,步骤如下:

1、先创建快捷键资源表IDR_ACCELERATOR1,在表中将快捷键与菜单ID绑定

2、在对话框的.h文件中,声明快捷键资源句柄  HACCEL m_Haccel;

3、在OnInitDialog函数中添加代码:

//加载快捷键资源表  
m_Haccel = LoadAccelerators(theApp.m_hInstance,(LPCTSTR)IDR_ACCELERATOR1);

4、添加快捷键消息处理虚函数,如下:

BOOL CTestDlg::PreTranslateMessage(MSG* pMsg)  
{   //处理快捷键消息  
    if(m_Haccel)  
    {  
        if(TranslateAccelerator(m_hWnd,m_Haccel,pMsg))  
            return TRUE;  
    }  
  
    return CDialogEx::PreTranslateMessage(pMsg);  
}

5、在资源中,右键为菜单添加事件处理方法

另外,给菜单添加小图标,代码如下:

1、在对话框窗口中.h文件中声明 CBitmap  m_bmp;

2、在对话框的OnInitDialog函数中添加代码:

m_bmp.LoadBitmap(IDB_BITMAP1);  
GetMenu()->GetSubMenu(0)->SetMenuItemBitmaps(1,MF_BYPOSITION, &m_bmp, &m_bmp);  
//函数的第1个参数为菜单位置


以上是关于VC对话框的菜单添加快捷键的主要内容,如果未能解决你的问题,请参考以下文章

vc++在哪个菜单下有:‘打开类向导’?

MFC如何添加菜单快捷键

猎豹MFC--CMenu菜单 设置主菜单 给主对话框设置菜单 设置快捷菜单

162VC++的main函数接收命令行参数

162VC++的main函数接收命令行参数

我在学vc++的使用时这个不懂:怎样将项目设置为Debug模式?