随便生成一个SDI,自定义一个ToolBar按键,由如下函数响应COMMAND:void CMainFrame::OnChange()
{
// TODO: Add your command handler code here
CString m_sText;
CMenu* m_mymenu=GetMenu();
CMenu* m_mypopup=m_mymenu->GetSubMenu(0);
m_mymenu->GetMenuString(0,m_sText,MF_BYPOSITION);
m_mymenu->RemoveMenu(0,MF_BYPOSITION);
m_mymenu->InsertMenu(3,MF_BYPOSITION¦MF_POPUP¦MF_STRING,
(UINT)m_mypopup->m_hMenu,m_sText);
DrawMenuBar();
}
先把原的来项全部DleteMenu,然后再用
InsertMenu添上你所有的要显示的。
使用AppendMenu或InsertMenu加入新菜单项时为菜单项分配了ID号。这样,当用户按下某个菜单项,会发出一个WM_COMMAND消息,而菜单项的ID号,就包含在参数wParam的低位中.BOOL CYourView::OnCommand(WPARAM wParam, LPARAM lParam)
{
// TODO: Add your specialized code here and/or call the base class
UINT m_nItemID=LOWORD(wParam);
if (m_nItemID==ID_YOURITEM){ //ID_YOURITEM为你加入菜单项时指定的ID号
//在这里放入响应的代码
}
return CScrollView::OnCommand(wParam, lParam);
}
一个函数中处理一个范围内的所有消息