MENU关于CHECKED与UNCHECKED

代码1:void MyClass::CommandHandler()
{
      MENUITEMINFOW mItemInfo;
    CWnd* pMainWnd = AfxGetMainWnd();
    CMenu *mMenu = pMainWnd->GetMenu();
    CMenu *mSubMenu = mMenu->GetSubMenu(0);
    mSubMenu->GetMenuItemInfo(ID_CONFIGURE_SETTOFOREGROUNDININCOMINGCALL, &mItemInfo);
    if(mItemInfo.fState == MF_CHECKED)
    {
        mSubMenu->CheckMenuItem(ID_CONFIGURE_SETTOFOREGROUNDININCOMINGCALL, MF_UNCHECKED);
        m_bSetForeground = false;
    }
    else if(mItemInfo.fState == MF_UNCHECKED)
    {
        mSubMenu->CheckMenuItem(ID_CONFIGURE_SETTOFOREGROUNDININCOMINGCALL, MF_CHECKED);
        m_bSetForeground = true;
    }
}

 

代码2:void CMyView::OnViewStatuswindow()
{
CMenu *pMenu = AfxGetMainWnd()->GetMenu();

if(pMenu)
{
UINT state = pMenu->GetMenuState(ID_VIEW_STATUSWINDOW, MF_BYCOMMAND);
if(state == 0xFFFFFFFF)
return;

if (state & MF_CHECKED)
{
pMenu->CheckMenuItem(ID_VIEW_STATUSWINDOW, MF_UNCHECKED | MF_BYCOMMAND);
}
else
{
pMenu->CheckMenuItem(ID_VIEW_STATUSWINDOW, MF_CHECKED | MF_BYCOMMAND);
}

}
}

 

代码3:void CMainFrame::OnToggleTestMenuItem()
{
   // Get the popup menu which contains the "Test" menu item.
   CMenu* mmenu = GetMenu();
   CMenu* submenu = mmenu->GetSubMenu(3);

   // Check the state of the "Test" menu item. Check the menu item
   // if it is currently unchecked. Otherwise, uncheck the menu item
   // if it is not currently checked.
   UINT state = submenu->GetMenuState(ID_HELP_TEST, MF_BYCOMMAND);
   ASSERT(state != 0xFFFFFFFF);

   if (state & MF_CHECKED)
      submenu->CheckMenuItem(ID_HELP_TEST, MF_UNCHECKED | MF_BYCOMMAND);
   else
      submenu->CheckMenuItem(ID_HELP_TEST, MF_CHECKED | MF_BYCOMMAND);
}

 

CSDN:    GetMenuState参考

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值