CBCGPMenuBar的显示问题(问题解决送大量分)
奋斗小青年 2010-08-17 12:08:13 问题描述:
自己新建了一个CBCGPMenuBar菜单栏,想在菜单栏上进行CHECKED与UNCHECKED切换操作.但是就是没打勾的效果.
代码如下:
1.消息映射中:
ON_COMMAND(ID_EDIT_UNDO,&CMainFrame::OnToggleTestMenuItem)
2.MainFrame.h中:
CBCGPMenuBar m_wndMenuBar;
afx_msg void OnToggleTestMenuItem();
3.MainFrame.cpp中:
void CMainFrame::OnToggleTestMenuItem()
{
CMenu *mmenu = CMenu::FromHandle ( m_wndMenuBar.GetHMenu () );
CMenu* submenu = mmenu->GetSubMenu(3);
UINT state = submenu->GetMenuState(ID_EDIT_UNDO, MF_BYCOMMAND);
ASSERT(state != 0xFFFFFFFF);
if (state & MF_CHECKED)
submenu->CheckMenuItem(ID_EDIT_UNDO, MF_UNCHECKED | MF_BYCOMMAND);
else
submenu->CheckMenuItem(ID_EDIT_UNDO, MF_CHECKED | MF_BYCOMMAND);
}
编译运行都可以通过,就是没效果 各位请帮下忙 问题解决 分奉上 谢谢