我希望在对话框程序中能像文档视图那样控制托盘上弹出的菜单的状态,请问各位大虾该如何办?
我的思路是:模仿文档视图的思路,响应了鼠标的消息后,用TrackPopupMenu弹出菜单,然后再其下面给每个菜单项构造一CCmdUI,然后逐个的DoUpdate,然后再使用ON_UPDATE_COMMAND_UI响应,但是运行以后能找到响应的函数,我本来是Enable(FALSE)的,但是其相应的菜单项并不变成Gray,为什么?请问各位有没有其他的办法

解决方案 »

  1.   

    我已经解决了,可以完全COPY文档视图中的代码,只需要重载对话框类中的OnInitPopupMenu方法,然后再调用了CDialog::OnInitPopupMenu(...)之后直接拷贝CFrameWnd中的代码到后面就可以了,其中只需要把m_bAutoMenuEnable改为TRUE(由于CDialog中没有此项),其意思就是自动的enable或者disable菜单,这样就可以解决所有的问题了
      

  2.   

    modifymenu 很简单啊..我一直在用,不过有点麻烦了,有高手请指教