2007/08/25 | MFC中动态新建菜单命令
类别(计算机与编程) | 评论(0) | 阅读(29) | 发表于 10:00

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
 CMenu *pMainMenu=GetMenu();
 CMenu *pSubMenu=pMainMenu->GetSubMenu(4);
 CString StrOfNewMenuItem("新建菜单项");
 pSubMenu->AppendMenu(MF_SEPARATOR);
 pSubMenu->AppendMenu(MF_STRING,ID_NEW_MENUITEM,StrOfNewMenuItem);
 m_bAutoMenuEnable=FALSE;
 PMainMenu->EnableMenuItem(ID_NEW_MENUITEM,MF_BYCOMMAND|MF_ENABLED);
 DrawMenuBar();
 return 0;
}

动态新建一个菜单命令。
//获取主菜单的指针
CMenu* pSubMenu=pSysMenu->GetSubMenu(1);
//获取一级菜单的指针
CString strMenuItem(_T("新的菜单命令(&N)"));
pSubMenu->AppendMenu(MF_SEPARATOR);
//画一条分隔线
pSubMenu->AppendMenu(MF_STRING,ID_NEW_MENUITEM,strMenuItem);
//创建一个新的菜单命令
m_bAutoMenuEnable=false;
//允许使用ON_UPDATE_COMMAND_UI或ON_COMMAND的菜单命令
pSysMenu->EnableMenuItem(ID_NEW_MENUITEM,MF_BYCOMMAND|MF_ENABLED);
//使添加的菜单处于允许的状态
DrawMenuBar(); //更新菜单。

0

评论Comments

日志分类
首页[666]
计算机与编程[133]
EMU[40]
UFOs[24]
房产[127]
音乐[13]
LOG[0]
经济[120]
影视[3]
物理[7]
数学[8]
社会[105]
职场[9]
生物医学[18]
生活[59]