读书人

动态创建菜单请问

发布时间: 2013-01-28 11:49:56 作者: rapoo

动态创建菜单请教
本帖最后由 x309374055 于 2010-06-14 21:09:28 编辑


void CSX06View::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
if( 0x0d == nChar )
{
if( 0 == ++m_nIndex )//int型,构造函数中初始化为-1
{
m_menu.CreatePopupMenu (); //m_menu是私有成员

GetParent()->GetMenu ()->AppendMenu ( MF_POPUP,(UINT_PTR)m_menu.m_hMenu ,
L"电话簿" );
//GetParent()->GetMenu ()->AppendMenu ( MF_POPUP,IDM_POPUP/*我自定义的*/,
// L"电话簿" );

GetParent()->DrawMenuBar();
}
}
CView::OnChar(nChar, nRepCnt, nFlags);
}


为什么一点回车程序就崩溃了?我试加了句m_menu.Detach()也不行呢
[解决办法]

void CSX06View::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
if( 0x0d == nChar )
{
if( 0 == ++m_nIndex )//int型,构造函数中初始化为-1
{
CMenu menu;
menu.CreatePopupMenu (); //m_menu是私有成员

AfxGetMainWnd()->GetMenu ()->AppendMenu ( MF_POPUP,(UINT_PTR)menu.m_hMenu , _T("电话簿") );

menu.Detach();
AfxGetMainWnd()->DrawMenuBar();
}
}
CView::OnChar(nChar, nRepCnt, nFlags);
}

读书人网 >VC/MFC

热点推荐