分享

模态/非模态对话框不响应菜单的UPDATE

 jtll521 2011-04-02
  1. void CXXXDlg::OnInitMenuPopup(CMenu* pPopupMenu, UINT nIndex, BOOL bSysMenu)  
  2. {  
  3.  CDialog::OnInitMenuPopup(pPopupMenu, nIndex, bSysMenu);  
  4.   
  5. // TODO: Add your message handler code here  
  6.   
  7.  if(!bSysMenu && pPopupMenu)  
  8.  {  
  9.   CCmdUI cmdUI;  
  10.   cmdUI.m_pOther = NULL;  
  11.   cmdUI.m_pMenu = pPopupMenu;  
  12.   cmdUI.m_pSubMenu = NULL;  
  13.   
  14.   UINT count = pPopupMenu->GetMenuItemCount();  
  15.   cmdUI.m_nIndexMax = count;  
  16.   for(UINT i=0; i<count; i++)  
  17.   {  
  18.    UINT nID = pPopupMenu->GetMenuItemID(i);  
  19.    if(-1 == nID || 0 == nID)  
  20.    {  
  21.     continue;  
  22.    }  
  23.    cmdUI.m_nID = nID;  
  24.    cmdUI.m_nIndex = i;  
  25.    cmdUI.DoUpdate(this, FALSE);  
  26.   }  
  27.  }   
  28. }   

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多