在 MFC 中,CWnd::OnInitMenu 是一个虚拟函数,而不是受保护方法。这个函数用于在菜单初始化时执行一些操作。具体而言,当菜单即将显示时(例如在用户点击菜单时),MFC 将调用 OnInitMenu。

下面是一个简单的示例,展示如何在一个派生自 CWnd 的类中重写 OnInitMenu:
void CYourWndClass::OnInitMenu(CMenu* pMenu)
{
    // 在这里执行菜单初始化时的逻辑

    CWnd::OnInitMenu(pMenu); // 调用基类的方法
}

在上述示例中,OnInitMenu 可以用于在菜单即将显示时执行一些特定的逻辑,例如根据当前应用程序的状态启用或禁用菜单项。

请注意,这个函数会在菜单显示之前被调用,以便动态地更新菜单的状态。如果你需要在菜单项被选中时执行特定的逻辑,你可能需要处理 WM_COMMAND 消息,或者使用消息映射机制。


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