MFC菜单栏刷新问题

liuxiaobing2008 2010-05-03 10:26:55
我想更新我的菜单栏,但是除了第一次能更新成功外,以后就没有成功。
当点击不同的视图时,刷新相应的菜单项。
代码如下:
CMenu *MainMenu;
MainMenu = AfxGetMainWnd()->GetMenu();
MainMenu->EnableMenuItem(1, MF_GRAYED|MF_DISABLED|MF_BYPOSITION);
MainMenu->EnableMenuItem(2, MF_ENABLED|MF_BYPOSITION);

MainMenu->Detach();
DrawMenuBar();
...全文
828 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
顽固的石头哥 2011-08-18
  • 打赏
  • 举报
回复
基于对话框的工程,在你更改菜单项有效性之后,记得调用AfxGetMainWnd()->DrawMenuBar();,即可实现菜单有效性的刷新
尹成 2010-05-04
  • 打赏
  • 举报
回复
帖子都沉底了!只能帮楼主顶到上面,以期更多高手帮楼主解决难题!
BinboWang1987 2010-05-03
  • 打赏
  • 举报
回复
你这些都没有问题啊,你调试看看代码是否真的运行了,看是不是放错消息处理了
liuxiaobing2008 2010-05-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 uc_fly 的回复:]
可以的,没有问题啊。
[/Quote]

有问题,再次刷新的时候就不行了
liuxiaobing2008 2010-05-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 visualeleven 的回复:]
响应UPDATE_COMMAND_UI消息看看
[/Quote]
没有ID号,怎么样才能响应UPDATE_COMMAND_UI消息
uc_fly 2010-05-03
  • 打赏
  • 举报
回复
可以的,没有问题啊。
Eleven 2010-05-03
  • 打赏
  • 举报
回复
响应UPDATE_COMMAND_UI消息看看
uc_fly 2010-05-03
  • 打赏
  • 举报
回复
楼主程序是基于MDI吗?
昨夜无风 2010-05-03
  • 打赏
  • 举报
回复 4
AfxGetMainWnd()->DrawMenuBar();
liuxiaobing2008 2010-05-03
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 uc_fly 的回复:]
引用 7 楼 liuxiaobing2008 的回复:
引用 5 楼 wbb198811114 的回复:
你这些都没有问题啊,你调试看看代码是否真的运行了,看是不是放错消息处理了

问题倒是没有问题,就是明明这个菜单已经可选了,但是还是灰色的,当鼠标点击菜单项的时候,才会更新。

我试了,没有你说的问题。
[/Quote]
需要两个视图一起使用,譬如:点击这个视图,“编辑”菜单灰选,“工具”菜单激活;点击另外一个视图,“工具”菜单灰选,“编辑”菜单激活,反复切换的时候就有问题了
uc_fly 2010-05-03
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 liuxiaobing2008 的回复:]
引用 5 楼 wbb198811114 的回复:
你这些都没有问题啊,你调试看看代码是否真的运行了,看是不是放错消息处理了

问题倒是没有问题,就是明明这个菜单已经可选了,但是还是灰色的,当鼠标点击菜单项的时候,才会更新。
[/Quote]
我试了,没有你说的问题。
liuxiaobing2008 2010-05-03
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wbb198811114 的回复:]
你这些都没有问题啊,你调试看看代码是否真的运行了,看是不是放错消息处理了
[/Quote]
问题倒是没有问题,就是明明这个菜单已经可选了,但是还是灰色的,当鼠标点击菜单项的时候,才会更新。
尹成 2010-05-03
  • 打赏
  • 举报
回复
来学习学习,顺便顶下,以期更多高手帮楼主解决难题!

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧