VC动态增加或删除菜单
(1)、 增加菜单//添加CMenu *mainmenu;mainmenu=AfxGetMainWnd()->GetMenu(); //得到主菜单(mainmenu->GetSubMenu (0))->AppendMenu (MF_SEPARATOR);//添加分隔符(mainmenu->GetSubMenu (0))->AppendMenu(MF_STRING,ID_APP_ABOUT,_T("Always on &Top")); //添加新的菜单项DrawMenuBar(); //重画菜单(2)、 删除菜单//删除CMenu *mainmenu;mainmenu=AfxGetMainWnd()->GetMenu(); //得到主菜单CString str ;for(int i=(mainmenu->GetSubMenu (0))->GetMenuItemCount()-1;i>=0;i--) //取得菜单的项数。{ (mainmenu->GetSubMenu (0))->GetMenuString(i,str,MF_BYPOSITION); //将指定菜单项的标签拷贝到指定的缓冲区。MF_BYPOSITION的解释见上。 if(str=="Always on &Top") //如果是刚才我们增加的菜单项,则删除。 {(mainmenu->GetSubMenu (0))->DeleteMenu(i,MF_BYPOSITION); break; }}
永久链接地址: 知识库 VC动态增加或删除菜单
|