VC 在对话框中增加菜单栏
来源:互联网 发布:lol冷小莫淘宝店 编辑:程序博客网 时间:2024/06/07 05:37
1、添加菜单资源
在resourceview视图中右击选择insert,添加一个菜单资源IDR_MENU1,同时设定好响应的菜单项,例
如:
菜单1 菜单2
子菜单1(ID_MENUITEM1) 子菜单3(ID_MENUITEM3)
子菜单2(ID_MENUITEM2) 子菜单4(ID_MENUITEM4)
2、在对话框中添加该菜单
先增成员变量HMENU m_hMenu1;
然后在初始化函数On
m_hMenu1=LoadMenu(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDR_MENU1));//导入资源,创建
菜单
::SetMenu(this->GetSafeHwnd(),m_hMenu1);//添加到对话框
3、添加子菜单响应函数
点击菜单View-->ClassWizard,在message map选项卡中选择我们要响应的菜单ID_MENUITEM1,然后选
择COMMAND消息,双击添加到member functions中,提示命名,命名后在member functions双击该函数,
编写响应动作
4、注销资源
在对话框的On
DestroyMenu(m_hMenu1);
5、关于禁用菜单或者子菜单
子菜单
CMenu * pMenu;
CMenu * pSubMenu;
pMenu=CMenu::FromHandle(m_hMenu1);//获得菜单栏的指针
pSubMenu=pMenu->GetSubMenu(1); //1表示从0开始的主菜单序号
pSubMenu->EnableMenuItem(ID_MENUITEM3,MF_GRAYED);//禁用
//ID_MENUITEM3表示子菜单的ID号,MF_GRAYED表示禁用并且为灰色
pSubMenu->EnableMenuItem(ID_MENUITEM3,MF_ENABLED);//启用
主菜单
CMenu * pMenu;
pMenu=CMenu::FromHandle(m_hMenu1);//获得菜单栏的指针
pMenu->EnableMenuItem(1,MF_BYPOSITION |MF_GRAYED);//禁用
//MF_BYPOSITION表示按序列查,从0开始,因为主菜单为popup类型,没有ID编号,只能用这中方式
pMenu->EnableMenuItem(1,MF_ENABLED);//启用
主菜单下的popup联级菜单(其实类似主菜单)
CMenu * pMenu;
CMenu * pSubMenu;
pMenu=CMenu::FromHandle(m_hMenu1);//获得菜单栏的指针
pSubMenu=pMenu->GetSubMenu(0);//获得主菜单序号
pSubMenu->EnableMenuItem(1,MF_BYPOSITION |MF_GRAYED);//禁用
//MF_BYPOSITION表示该主菜单下的第一个菜单,该菜单没有ID号,为popup类型
- VC 在对话框中增加菜单栏
- VC 在对话框中增加菜单栏
- VC 在对话框中增加菜单栏
- VC 在对话框中增加菜单栏
- 【VC++】VC对话框中增加菜单栏
- 在对话框中增加菜单栏,工具栏,状态栏
- VC 在对话框中增加菜单
- VC/MFC 在对话框中添加菜单栏并响应
- 在对话框中动态添加菜单栏
- 如何在对话框中加入菜单栏?
- 如何在vc中的对话框的菜单栏添加收藏夹啊???
- VC对话框编程中增加菜单
- VC在对话框中画图
- VC在对话框中画图
- VC6.0是绘对话框 增加菜单栏
- vc 对话框修改菜单栏的背景颜色
- vc 对话框修改菜单栏的背景颜色
- 在VC中直接调用系统对话框
- HDU 3498 whosyourdaddy【Dancing Links重复覆盖】
- 在线jQuery插件演示大全
- 企业版IDP的申请及“In House”发布
- JAVA运行时异常及常见的5中RuntimeExecption
- server jvm params
- VC 在对话框中增加菜单栏
- fatal: bad object HEAD
- WTL如何在工程中使用bkwin
- 判断Word是否已打开
- Creating photo album with jQuery Chop Slider
- 亲们~嵌入式的blog停笔了~
- 对数据结构中的 堆 的理解有帮助的文章
- DataTable.Compute用法
- C++ JSON