- 创建一个menu 创建菜单项 自动生成其ID 如IDR_MENU1 不用创建类
创建两个子选项
2.打开mainFrame类 找到 OnCreate函数
// TODO: Delete these three lines if you don't want the toolbar to
// be dockable
this->SetMenu(NULL); // 设置当前菜单为空
CMenu menu; //创建一个menu对象
menu.LoadMenu(IDR_MENU1); //绑定新创建的menu,找到其ID,如IDR_MENU1
this->SetMenu(&menu); //给应用程序设置菜单
menu.Detach(); //持久化,不消失
3.打开类向导 找到子菜单选项ID 创建UPDATE_COMMAND_UI函数
4.OnUpdateUp (CCmdUI* pCmdUI)内容 //CCmdUI 是顶层类 没有基类
pCmdUI->Enable(TRUE);//控制菜单显示不显示 每次下拉菜单 会挨个执行 OnUpdateMenu
设置为TRUE 就可以点击这个选项了
点一下显示 再点一下不显示 代码如下:
static int STATE = 0; // static 修饰 只创建一次 可多次赋值
if(STATE==0){
pCmdUI->Enable(FALSE);
STATE=1;
}else{
pCmdUI->Enable(TRUE);
STATE=0;
}
如果是点击选项 出来对话框窗口
1. 先创建一个对话框,然后打开类向导 会弹出一个提示框 点击OK 起个名字 如 dlg 创建该对话框的实体类
2.在CMainFrame类中 为选项 up 添加一个COMMAND函数
在CMainFrame最上方 引入 #include ”dlg.h”
然后在OnUp函数中
dlg d; //创建新建的对话框对象
d.DoModal(); //调用DoModal()函数 弹出对话框
//if(dlg.DoModal()==IDOK){ //可根据返回值是IDOK还是IDCANCEL做出操作
|
flag=1;
} else{
flag=0;
}