根据我的了解,MFC 中确实有 CMFCMenuBar 类的 GetSystemMenu 公共方法。这个方法用于获取与菜单栏相关联的系统菜单的指针。

以下是一个简单的示例代码,演示如何使用 GetSystemMenu 方法:
// 假设 pMenuBar 是指向 CMFCMenuBar 对象的指针
CMFCMenuBar* pMenuBar = GetMenuBar();

if (pMenuBar != nullptr) {
    // 获取与菜单栏相关联的系统菜单的指针
    CMenu* pSystemMenu = pMenuBar->GetSystemMenu();

    if (pSystemMenu != nullptr) {
        // 在这里可以对系统菜单进行操作,例如添加或删除菜单项
        // 例如,添加一个新的菜单项
        pSystemMenu->AppendMenu(MF_SEPARATOR);  // 添加分隔符
        pSystemMenu->AppendMenu(MF_STRING, IDM_MY_COMMAND, _T("我的命令"));

        // 处理其他与系统菜单相关的操作...
    }
}

在这个例子中,pSystemMenu 是一个指向 CMenu 对象的指针,你可以使用该对象进行与系统菜单相关的各种操作。

请注意,确保你的 MFC 库版本支持 GetSystemMenu 方法,因为这个方法可能在不同的 MFC 版本中有所变化。


转载请注明出处:http://www.zyzy.cn/article/detail/19339/MFC/CMFCMenuBar