MFC如何添加菜单快捷键

MFC如何添加菜单快捷键,第1张

1:在资源文件Accelerator中添加快捷键资源,此处的ID一定要与菜单项的ID一致。2:在程序的主文件,一般是...view.h(或是对话框的头文件)中声明一个HACCEL hAccel变量,在相应cpp文件中的初始化函数(OnCreate(...))中添加如下代码hAccel=::LoadAccelerators(AfxGetInstanceHandle(),MAKEINTRESOURCE(菜单的资源ID))3:重载PreTranslateMessage函数。在函数加入如下代码:if(::TranslateAccelerator(GetSafeHwnd(),hAccel,pMsg)){returntrue}以后只要在Accelerator资源文件中添加快捷键就可以了。

第一步:在资源视图窗中右键插入Accelerator资源,然后修改Accel属性里的快捷键;

第二步:声明一个HACCEL全局变量,在OnInitDialog()中添加

hACCTable=LoadAccelerators(AfxGetInstanceHandle(),MAKEINTRESOURCE("快捷键表ID"))

第三步:添加PreTranslateMessage相应函数,添加代码

if(::TranslateAccelerator(m_hWnd,hAccTable,pMsg))//hAccTable为HACCEL全局变量

{

return true

}

第四步:为快捷键添加COMMAND响应函数,函数内容就是调用你的按钮相应函数

以下过程适用于VC6.0版本。

添加菜单:

第一步,建立基于对话框的工程。

第二步,添加menu资源,添加菜单项,设其ID为IDR_MENUADD,添加所需要的菜单项。

第三步,在menu资源界面按Ctrl+W进入ClassWizard,此时会d出一个对话框,选中“select an exitingclass”,然后在select class对话框中选中主对话框类。然后点OK。

第四步,打开主对话框的属性,general下有一menu选项,选中刚才添加的mune资源的ID.如下:

最后,程序运行如下:

设定快捷键:

第一步,添加资源Accleerator,如下,点击New

第二步,在ResourceView下打开Accleerator ,打开IDR_ACCELERATOR1

然后双击两虚线之间部分,会d出一个设置的对话框,在ID栏选中要设置的菜单ID,在Key栏,设置你想要的快捷键,如下:

第三步,在菜单项添加快捷键说明


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11885075.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存