我想实现点一个菜单打开一个窗体的功能,但是打开一个后就要求菜单项变灰色(不能点的状态),当关闭窗体后菜单项恢复可以点的状态。请问怎么实现?

解决方案 »

  1.   

    void CMainFrame::OnUpdateYourMenu(CCmdUI* pCmdUI) 
    {
    pCmdUI->Enable (Flag);
    }
    在点击菜单后Flag=FALSE,在退出对话框后Flag=TRUE
      

  2.   

    //变灰
    pMenu->EnableMenuItem (ID_MENU_ITEM,MF_BYCOMMAND | MF_GRAYED);
    //恢复
    pMenu->EnableMenuItem (ID_MENU_ITEM,MF_BYCOMMAND | MF_ENABLED); 
      

  3.   

    在void CMainFrame::OnUpdateYourMenu(CCmdUI* pCmdUI)中得到你要打开的窗体的状态,然后写代码pCmdUI->Enable( bOpen );//bOpen一个BOOL型表达式)