首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

! CMenu:ModifyMenu 改不了菜单的标题

2012-01-15 
求助! CMenu::ModifyMenu 改不了菜单的标题我想用ModifyMenu来动态修改菜单标题,我是这样用的psubmenu-Mo

求助! CMenu::ModifyMenu 改不了菜单的标题
我想用ModifyMenu来动态修改菜单标题,我是这样用的
psubmenu->ModifyMenu(nPos,MF_BYPOSITION|MF_STRING ,ID_APP,L"strings");//运行后没效果
然后改为
psubmenu->ModifyMenu(ID_APP,MF_BYCOMMAND|MF_STRING ,ID_APP,L"strings");//运行后同样没效果
但改为
psubmenu->ModifyMenu(nPos,MF_BYPOSITION|MF_STRING ,0,L"strings");//运行后可显示,只是无法响应

前两种,后面加上DrawMenuBar()后亦是没效果

why? help me!

[解决办法]
你的这个函数用错了!!!
第一个参数是菜单的位置不是ID,第二个参数如果为MF_BYPOSITION第三个参数用的是位置如果为MF_BYCOMMAND第三个参数用的是ID。
[解决办法]
psubmenu->ModifyMenu(ID_XXX,MF_BYCOMMAND|MF_STRING ,ID_XXX,L"strings")

psubmenu->ModifyMenu(nPos,MF_BYPOSITION|MF_STRING ,ID_XXX,L"strings")
ID_XXX是这个菜单的ID,不要和别的菜单项冲突,自己定义一下

[解决办法]

探讨
引用:
不好意思
NULL的位置换成菜单ID呢?


我的索引位置不为0,不过也试了下,不行

感谢您的关注

[解决办法]
UINT id = submenu->GetMenuItemID(pos);
submenu->ModifyMenu(id, MF_BYCOMMAND, id, "&Save Selection");

ModifyMenu使用方法MSDN里的例子我觉得说的很明确了。你可以参考下。
你说的消息不响应我想你应该检查下你的菜单对象创建的是否正确,这里只是修改菜单的子项。

热点排行