vc 动态菜单

一,建立Application,创建一个单文档应用程序.

一,建立Application,创建一个单文档应用程序.

二,创建自定义菜单

三,打开String Table,添加扩展菜单命令 如: IDS_BLUE  | 614456 | 红色 ; IDS_GREEN| 61447 | 绿色

四,添加消息映射

主要代码如下:

  1. void CTestView::OnExpandButton()
  2. {
  3.     CMenu* pAddMenu,*pTopMenu;
  4.      pTopMenu  = ::AfxGetMainWnd()->GetMenu(); // 得到主菜单指针
  5.      pAddMenu = pTopMenu->GetSubMenu(4);        // 获取相应位置的菜单
  6.      pAddMenu->AppendMenu(MF_SEPARATOR); // 添加一条分割线
  7.     CString MenuName;
  8.      for (int i= 0; i<3; i++)
  9.      {
  10.           MenuName.LoadString(IDS_BLUE1+i);    // 从 String Table 中取得菜单命令上的字符串
  11.           pAddMenu->AppendMenu(MF_STRING,IDS_BLUE1+i,MenuName);//添加菜单
  12.      }
  13. }
  14. void CTestView::OnStdButton()
  15. {
  16.     CMenu* pAddMenu,*pTopMenu;
  17.      pTopMenu  = ::AfxGetMainWnd()->GetMenu();
  18.      pAddMenu = pTopMenu->GetSubMenu(4);
  19.   
  20.      int i = pAddMenu->GetMenuItemCount();// 获取菜单总数
  21.      while(i>2)
  22.      {
  23.           //pAddMenu->RemoveMenu(i,MF_BYPOSITION); //删除菜单项
  24.           pAddMenu->DeleteMenu(i,MF_BYPOSITION);    //删除菜单项 (与上面的区别出息? )
  25.           i--;
  26.      }
  27. }

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值