怎么实现Menu的CheckMenuItem?谢谢关注。
票票飞扬 2003-01-08 09:13:57 //引用了ListViewEx,构造的一个视图
//引用Popup Menu菜单
void CTraceCCSView::OnContextMenu(CWnd* pWnd, CPoint point)
{
CMenu menu;
menu.LoadMenu (IDR_CCSMENU);
menu.GetSubMenu (0)->TrackPopupMenu (TPM_LEFTALIGN|TPM_RIGHTBUTTON,point.x,point.y,this,NULL);
}
//点击其中一个菜单项,要求改变MF_CHECKED和MF_UNCHECKED。
//以下程序不能实现,该怎么修改?
————————————————————————————
void CTraceCCSView::OnCcsmenuRegcc()
{
CMenu* mmenu = GetMenu(); //这步就有问题,下面根本就不能实现了
CMenu* submenu = mmenu->GetSubMenu(0);
UINT state = submenu->GetMenuState(ID_CCSMENU_REGCC, MF_BYCOMMAND);
ASSERT(state != 0xFFFFFFFF);
if (state & MF_CHECKED)
submenu->CheckMenuItem(ID_CCSMENU_REGCC, MF_UNCHECKED | MF_BYCOMMAND);
else
submenu->CheckMenuItem(ID_CCSMENU_REGCC, MF_CHECKED | MF_BYCOMMAND);
}