在 MFC(Microsoft Foundation Classes)中,CFrameWndEx::OnCreate 方法是 CFrameWndEx 类的一个公共方法,用于处理主框架窗口创建事件。当主框架窗口被创建时,系统会调用 OnCreate 方法,允许应用程序在此时执行一些初始化操作。

以下是 CFrameWndEx::OnCreate 方法的函数签名:
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);

  •  lpCreateStruct:指向 CREATESTRUCT 结构的指针,其中包含有关窗口的创建信息。


在 CFrameWndEx 类中,你可以覆盖 OnCreate 方法以执行主框架窗口的初始化操作。通常,在这个方法中,你可以创建工具栏、状态栏、菜单等界面元素,设置窗口样式,或者执行其他与窗口创建相关的任务。

以下是一个简单的示例:
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    if (CFrameWndEx::OnCreate(lpCreateStruct) == -1)
        return -1;

    // 在这里添加窗口创建的初始化逻辑

    // 创建并设置工具栏
    if (!m_wndToolBar.CreateEx(this) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
    {
        TRACE0("Failed to create toolbar\n");
        return -1;      // 未能创建
    }

    // 创建并设置状态栏
    if (!m_wndStatusBar.Create(this))
    {
        TRACE0("Failed to create status bar\n");
        return -1;      // 未能创建
    }
    m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT));

    // 在这里可以添加其他窗口创建的初始化逻辑

    return 0;
}

在这个示例中,OnCreate 方法首先调用基类的 OnCreate 方法,然后创建并设置工具栏和状态栏。你可以根据实际需求,在 OnCreate 方法中添加适用于你的应用程序的初始化逻辑。


转载请注明出处:http://www.pingtaimeng.com/article/detail/17939/MFC/CFrameWndEx