2、先在资源视图下选择添加资源,选择菜单
CMenu
m_menu
m_menu.loadMenu(你添加菜单资源的ID);
SetMenu(&m_menu)
以下过程适用于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栏,设置你想要的快捷键,如下:
第三步,在菜单项添加快捷键说明
思路是这样的,先在资源面板里添加一个menu资源,编辑成自己想要的,完成以后在需要右键单击触发的地方添加右键单击事件,代码里写入d出这个menuCMenu m,*pm
if(!m.LoadMenu(IDR_MENU1)) MessageBox(_T("err"))//IDR_MENU1是相应的资源id
pm=m.GetSubMenu(0)//获取子对话框
CPoint pot
GetCursorPos(&pot)//获取鼠标当前位置
pm->TrackPopupMenu(TPM_LEFTALIGN,pot.x,pot.y,this)//在鼠标位置d出菜单
注意,上面的pm是获取的是第一个主menu项下的子menu,比如设计menu资源的时候主menu从左到右是1,2,3,其中1下面又添加了4,5,6
那么这个程序d出的menu就是4,5,6
自己建个工程体会一下就知道了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)