有的
GetSubMenu
EnableMenuItem
或者mfc的话,处理onupdate消息就可以了
GetSubMenu
EnableMenuItem
或者mfc的话,处理onupdate消息就可以了
解决方案 »
- 问个数据库查询的问题,大牛帮忙看看
- 对话框 背景图片 运行时 加载不成功
- 我想错了,微软不排除会在未来的IE中采用ribbon界面?
- 如何用鼠标精确定位插入符的位置!重写edit控件
- 一个图形失真问题
- 如何让CFileDialog记住上次文件打开的路径?
- 编辑控件怎么样使回车变成按TAB健的效果啊
- 请问图形图象的编程有什么好书(尤其是 3D 的),OpenGL 和 DirectX 那一个好一些,那一个更流行?
- 那位高手能讲一下size_t 是怎抹一回事,它是什莫,为什莫要定义他,还有ptrdiff_t
- 如何获得一个对话控件的指针?
- 目录对话框
- 我在主流程里调用以下两个函数,为什么老是访问冲突!?
EnableMenuItem(0, MF_BYPOSITION | MF_DISABLED | MF_GRAYED);
其中,0是位置。
uIDEnableItem 从0算起
if(!::EnableMenuItem(hMenu, uIDEnableItem, MF_BYPOSITION|MF_GRAYED))
::MessageBox(0, "这样也不行:)", "", MB_OK);
如果,你的"文件"在菜单中的位置是0,而"数据管理"在"文件"中的位置也是0,则代码如下:
CMenu *pMenu = GetMenu(); // 菜单条
pMenu = pMenu->GetSubMenu(0); // "文件"菜单
pMenu->EnableMenuItem(0, MF_BYPOSITION | MF_DISABLED | MF_GRAYED); // 禁止"数据管理"项
CMenu* submenu = mmenu->GetSubMenu(0);
submenu->EnableMenuItem(0, MF_BYPOSITION | MF_GRAYED);其中上面两行的0均是参数,要做对应的调整,
CMenu* submenu = mmenu->GetSubMenu(0);
submenu->EnableMenuItem(0, MF_BYPOSITION | MF_GRAYED);