用EnableMenuItem不能使菜单变灰的原因

为何不能Disable菜单项  
  问:我有一个工具button在WM_COMMAND消息是这样做的:  
   
  CMenu   *pMenu   =   GetMenu();  
  pMenu->EnableMenuItem(ID_MY_OPTION,MF_BYCOMMAND|MF_DISABLED);  
   
  但菜单并没有被Disable  
  答:缺省的习惯是当没有UpdateCmdUI句柄时程序是使能(Enable)菜单,这就是为什么菜单自己主动变成使能,仅仅要关掉缺省值就能够了,把以下的代码增加你的程序    
  CMainFrm::CMainFrm  
  {  
          //   Other   stuff  
          this->m_bAutoMenuEnable   =   false;  
  }  

posted @ 2015-03-04 11:38  zfyouxi  阅读(143)  评论(0编辑  收藏  举报