关于MFC响应菜单和使用菜单的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于MFC响应菜单和使用菜单的方法相关的知识,希望对你有一定的参考价值。

网上看了很多MFC插入菜单的例子,只是说要借助CMainFrame类

使用CMenu* GetMenu()指针。。

可是我压根就不知道是自己建立一个类,把这些导入进去。再处理。还是直接通过MFC的“建立类向导”直接添加。压根就找不到CMainFrame类。

还是直接写在CReadview里面...菜单按钮和子按钮的ID也知道如何获取;只是不知道如何使用,是通过侦听,返回true false来判断是否选中,还是什么。

还请指点迷津,我用的VC6.0

和按钮一样呀,不过你要在对话框的属性设置中选中你做的菜单,要不然对话框不显示菜单 参考技术A “可是我压根就不知道是自己建立一个类,把这些导入进去。再处理。还是直接通过MFC的“建立类向导”直接添加。压根就找不到CMainFrame类。”

通过MFC的“建立类向导" 类型单文档或多文档都行。
在classview里面可以找到CMainFrame类,并存在一个GetMenu()成员函数。

“还是直接写在CReadview里面...菜单按钮和子按钮的ID也知道如何获取;只是不知道如何使用,是通过侦听,返回true false来判断是否选中,还是什么”
你需要学会classwizard的使用。本回答被提问者采纳
参考技术B ON_COMMAND(id) 参考技术C 楼主用的是 VS 2005/2008 还是 VC 6.0 ?追问

VC 6.0

关于MFC主菜单和右键弹出菜单

一、主菜单、弹出菜单和右键菜单的概念:

主菜单是窗口顶部的菜单,一个窗口或对话框只能有一个主菜单,但是主菜单可以被更改(SetMenu()更改);

创建方式:CMenu::CreateMenu(void);

弹出菜单在菜单项中是带有右向小三角的菜单,主菜单的每个菜单项都是一个弹出菜单(PopMenu),因此弹出菜单是凸型或左凸型;

创建方式:CMenu::CreatePopMenu(void);

右键菜单是点击右键弹出的菜单(响应OnContextMenu)。

以上是关于关于MFC响应菜单和使用菜单的方法的主要内容,如果未能解决你的问题,请参考以下文章

mfc创建的单文档菜单栏按钮是灰的

MFC对话框中如何响应弹出式菜单事件 点击按钮 弹出菜单 菜单消息事件响应不了

MFC中菜单响应函数如何创建?

vs2013怎么用mfc添加菜单项消息响应函数

MFC如何给菜单添加消息映射

mfc 菜单项变灰