MFC程序怎么给按钮定义快捷键
你说的可能是给对话框上的按钮定义快捷键吧。
最好的办法就是在资源视图中建立快捷键表,并在对话框中加载快捷键表,就可以了。具体做法如下:
1、在资源视图建立快捷键表;
快捷键可以任意定义。
2、在对话框的***Dlg.h文件中定义快捷键表
HACCEL m_hAccel;//加速键表
3、在OnInitDialog()函数中加载快捷键表
m_hAccel=::LoadAccelerators(AfxGetResourceHandle(), m_lpszTemplateName);//可以是使用MAKEINTRESOURCE的整型ID
4、重载PreTranslateMessage函数。
BOOL CMoveFileDlg::PreTranslateMessage(MSG* pMsg)
{
//检查按键类的消息,从WM_ KEYFIRST 到 WM_KEYLAST
if(WM_KEYFIRST<=pMsg->message &&
pMsg->message<=WM_KEYLAST)
{
HACCEL hAccel=m_hAccel;
if(hAccel && ::TranslateAccelerator(m_hWnd,hAccel,pMsg))
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}


浙公网安备 33010602011771号