有没有一种方法可以在使用Visual Studio 2008样式创建的MFC应用程序的菜单栏中创建动态菜单项,而菜单不是功能区,我有一些插件可以动态添加其菜单,如何将它们添加到该菜单中?我懂了

//this is the menubar that i want to update
CMFCMenuBar       m_wndMenuBar;

最佳答案

首先,您必须创建一个新的子菜单。可以手动填充或从资源加载。
然后创建一个新的菜单按钮,并将其附加到子菜单。之后,更新菜单栏。而已。

CMenu menu;

if(menu.LoadMenu(IDR_MY_MENU))
{
    m_wndMenuBar.InsertButton(CMFCToolBarMenuButton(0, menu, -1, _T("&MyMenu")), -1);

    m_wndMenuBar.AdjustLayout();
    m_wndMenuBar.AdjustSizeImmediate();
}

附言menu可能是本地的,因为CMFCToolBarMenuButton构造函数从其中复制内容。

10-06 06:03