CMDIChildWndEx::EnableDocking 是 MFC 中 CMDIChildWndEx 类的一个公共方法,用于启用或禁用窗口的停靠(Docking)功能。

停靠是指在主窗口周围或其他子窗口边缘停靠子窗口,以形成一个更灵活的用户界面。通过调用 EnableDocking 方法,你可以允许或禁止 MDI 子窗口的停靠行为。

具体的调用方式可能如下:
CMDIChildWndEx* pChildWnd = new CMDIChildWndEx;
pChildWnd->EnableDocking(CBRS_ALIGN_ANY);  // 允许子窗口停靠在任何位置

在这个例子中,CBRS_ALIGN_ANY 表示子窗口可以停靠在主窗口的任何位置。你可以根据需要选择其他合适的停靠位置,比如 CBRS_ALIGN_TOP、CBRS_ALIGN_LEFT 等。

启用停靠功能后,你还需要在子窗口中添加相应的控件,使其具有停靠能力。通常,这涉及到在子窗口的 OnCreate 方法中调用 EnableDocking 和 DockControlBar。
BOOL YourChildWindow::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    // ...

    EnableDocking(CBRS_ALIGN_ANY);  // 允许子窗口停靠在任何位置

    // 将工具栏或其他控件加入停靠控制
    YourToolbar.Create(this, WS_CHILD | WS_VISIBLE | CBRS_TOP, ID_YOUR_TOOLBAR);
    DockControlBar(&YourToolbar);

    // ...
    
    return 0;
}

这样,你的 MDI 子窗口就具备了停靠的能力。请查阅相关的 MFC 文档或头文件以获取更详细的信息和用法。


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