要在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个参数为菜单位置
转载于:https://blog.51cto.com/9233403/1968304