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

关于dlg使用menu的有关问题

2012-01-19 
关于dlg使用menu的问题在SDI/MDI里面,menu有一个SetCheck(intnCheck)的方法,可以让我根据需要来设定这个菜

关于dlg使用menu的问题
在SDI/MDI里面,menu有一个SetCheck(int   nCheck)的方法,可以让我根据需要来设定这个菜单项的状态--OnUpdateMenuA(CCmdUI*   pCmdUI)
这个没有问题

但是,在dlg里面,我调用OnUpdateMenuA(CCmdUI*   pCmdUI)里面的SetCheck(int   nCheck)方法却不行

跟踪发现

SDI/MDI的SetCheck会进入void   CCmdUI::SetCheck(int   nCheck)在Microsoft   Visual   Studio\VC98\MFC\SRC\CMDTARG.CPP里面,有函数的执行代码

而dlg的SetCheck会进入void   CTestCmdUI::SetCheck(int)在Microsoft   Visual   Studio\VC98\MFC\SRC\CMDTARG.CPP里面,而且这个函数里面写着一句话说什么//   do   nothing   --   just   want   to   know   about   calls   to   Enable

那么有没有办法把dlg的menu作成和SDI/MDI一样的么?就是能够setcheck让那个小勾出来
大道理要听,更希望能够看到实例
谢谢各位了,看那么长的帖子


[解决办法]
上面的只是一个函数,你加进去就可以了。


如果还试不好,就试试这样的方法吧!
http://www.codeguru.com/cpp/w-d/dislog/commandui/article.php/c1911/
[解决办法]
没用过MFC,看起来SetCheck是虚函数,能重载自己实现吗?
[解决办法]
用CMenu去attatch,然后用setcheck可以的阿!
[解决办法]
没那么复杂啊,对话框的属性里不是有个 "菜单 "选项的吗?可以在创建的菜单里自己选的啊,操作起来和视图类一样啊

[解决办法]
还真是出不来诶但是pCmdUI-> Enable(false);管用的

热点排行