求助删除动态建立弹出菜单时出现的问题
bcll 2006-04-26 10:02:22 希望实现一个弹出菜单,其中的某一项还带有子菜单
程序简单代码是这样
CMenu m_PopListMenu,m_PopSubMenu;
m_PopListMenu.CreatePopupMenu();//在构造函数中创建
m_PopSubMenu.CreatePopupMenu();
//在自定义的ShowMenu函数中
......
m_PopSubMenu.AppendMenu(uFlag, ID_STATE_MANAGED, (LPCSTR)&m_PopItem_Alert);
m_PopListMenu.AppendMenu(uFlag|MF_POPUP,(UINT)m_PopSubMenu.m_hMenu,(LPCSTR)&m_PopItem_ChangeState);
.......
//然后删除
m_PopListMenu.DeleteMenu((UINT)m_PopSubMenu.m_hMenu,MF_BYCOMMAND);
m_PopSubMenu.DeleteMenu(ID_STATE_MANAGED, MF_BYCOMMAND);
运行的时候会出现assert,说是DeleteMenu的时候m_hMenu为空造成的。不知道为什么会出现这样的错误,应该怎么改进。
谢谢大家帮忙了。。。