以前做VS+MFC练习时,经常使用MFC基于对话框,控件什么的往对话框上一拉,如果是按钮则直接双击,是菜单则右键添加处理程序解决。今天使用基于单文档,想要在菜单栏中再新增一个菜单,网上查了很久,但都没找到想要的,(PS:我是MFC新手)。于是写下这篇文章供MFC新手借鉴:
首先新建MFC单文档工程(我的为philosopher),建完后在解决方案视图->源文件中 能看到以下.cpp文件:
此时运行可以看到:
(请无视“演示/p”菜单,等下说明如何添加进去。。。以及中间的"莫名图案",中间现在是空白一片)
好了,现在点开资源视图(视图->其他窗口->资源视图),点开Menu,可以看到:
(IDR_MENU1请直接无视掉~)
点开:IDR_MAINFRAIM,上图中的蓝框高亮部分,出现这个:(好了,熟悉了)
“演示/p”及其下的2个子菜单是新加进去的(在<请在此处键入>直接输入菜单名字就行),看下属性窗口栏里的子菜单的ID,可以自己随便改,不重名就行
这样菜单就添加进原来的菜单栏去了。接下来添加响应函数:对着要添加响应函数的菜单右键->添加事件处理程序
来到下面这个界面:(如果还没有添加响应函数的话,底下的添加编辑按钮是可以点击的,我的是已经添加过的,所以变灰)
这里要十分注意了:消息类型:COMMAND,与UPDATE_COMMAND_ID,前一个是加响应函数,后一个是控制按钮是否有效的。这里选着COMMAND。然后在右边的类列表中选择要加入到哪个类中,默认好像是第一个(AboutDlg),这里一般选CXXX View.cpp。点击《添加编辑》按钮,就会跳到这个函数体内:
void CphilosophersView::OnPlayOnce()
{
// TODO: 在此添加命令处理程序代码
}
然后就可以添加代码了,写你的菜单响应函数了,,原来这么简单。