MFC应用实例:[11]动态添加菜单

2025-10-28 08:32:07

1、新建一个单文档的MFC应用,工程的名字为AddMenu

MFC应用实例:[11]动态添加菜单

2、在工作区选择classview标签,展开AddMenu classes,右击CAddMenuView类,在弹出的菜单中选择add Windows Message Handler 命令,在弹出的对话框中的新建windows消息/事件列表框中选择WM_RBUTTONDOWN选项,单击add and Edit

MFC应用实例:[11]动态添加菜单

3、在工作区选择classview标签,展开AddMenu classes,右击CAddMenuView类,在弹出的菜单中选择add Member Function 命令,在弹出的对话框中添加函数:如下

MFC应用实例:[11]动态添加菜单

4、在CAddMenuView.cpp添加一下代码:

ON_COMMAND(IDM_ACTION_MENU, OnActionMenu)

MFC应用实例:[11]动态添加菜单

5、在添加的OnRButtonDown()、OnActionMenu()的函数中添加如下的代码:

void CAddMenuView::OnRButtonDown(UINT nFlags, CPoint point) 

{

CMenu *pMenu = AfxGetMainWnd()->GetMenu(); //得到主框架菜单

pMenu->GetSubMenu(2)->AppendMenu(MF_SEPARATOR); //添加菜单分隔符

pMenu->GetSubMenu(2)->AppendMenu(MF_STRING, IDM_ACTION_MENU, "动态菜单(&A)"); //添加菜单

MessageBox("添加菜单到“查看”菜单下成功", "信息提示", MB_OK); //提示信息

CView::OnRButtonDown(nFlags, point);

}

void CAddMenuView::OnActionMenu()

{

MessageBox("动态添加的菜单", "信息提示", MB_OK); //菜单响应信息

}

MFC应用实例:[11]动态添加菜单

6、运行程序动态的添加一个菜单结果如下:

MFC应用实例:[11]动态添加菜单

MFC应用实例:[11]动态添加菜单

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢