CMenu mainMenu;
mainMenu.LoadMenu(IDR_MENU_MAIN);
AfxGetMainWnd()->SetMenu(&mainMenu);
AfxGetMainWnd()->DrawMenuBar();
IDR_MENU_MAIN菜单构造如下:sub1,sub2,sub3为new的下拉菜单,sub4,5,6为test的下接菜单
new test
sub1 sub4
sub2 sub5
sub3 sub6
现在我要把test置为无效,即全部变灰,不能响应该其对应的command函数
或者令test子菜单变为不可见,要怎么做
mainMenu.LoadMenu(IDR_MENU_MAIN);
AfxGetMainWnd()->SetMenu(&mainMenu);
AfxGetMainWnd()->DrawMenuBar();
IDR_MENU_MAIN菜单构造如下:sub1,sub2,sub3为new的下拉菜单,sub4,5,6为test的下接菜单
new test
sub1 sub4
sub2 sub5
sub3 sub6
现在我要把test置为无效,即全部变灰,不能响应该其对应的command函数
或者令test子菜单变为不可见,要怎么做
解决方案 »
- 关于PE资源获取,只问个最基本的问题。。。
- 打印报表程序 如何在使用TPrinter::EndDoc 之后直接打印 而不是要把系统的打印设置调出来?
- 在类A.cpp定义一个int ATest(){return 1;}(注意不是类A的成员函数),怎样在类B的成员函数void B::BTest()中使用A的ATest()?
- 关于IDD
- 如何在vc开发的程序中绑定ip?(具体见内) 谢谢
- 对话框的初始化宽度和高度
- 我是初学者呀!!!!
- DataGrid标题列的问题?
- activex控件怎么实现键盘消息,用了钩子函数,但是回调函数不执行,求助
- 求助 关于线程优先级的问题
- 这样的查询功能如何实现,求助~~~
- 请教一个关于链接错误的解决方法
来实现
具体的用法查下 MSDN 吧!
上面说的蛮全的!
CMenu* submenu = mmenu->GetSubMenu(0);
submenu->EnableMenuItem(ID_FILE_NEW, MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
或者响应OnUpdate???消息
// The code fragment below shows how to disable (and gray out) the
// File\New menu item.
// NOTE: m_bAutoMenuEnable is set to FALSE in the constructor of
// CMainFrame so no ON_UPDATE_COMMAND_UI or ON_COMMAND handlers are
// needed, and CMenu::EnableMenuItem() will work as expected.CMenu* mmenu = GetMenu();
CMenu* submenu = mmenu->GetSubMenu(0);
submenu->EnableMenuItem(ID_FILE_NEW, MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);