我通过mfc框架生成了一个多文档的工程(包含一个“输出窗口”),这个输出窗口可以自动停靠在框架的右边,但是我自己创建了一个“任务面板窗口”,用DockControlBar(m_pWndToolBoxBar);和m_pWndToolBoxBar->DockToWindow(&m_wndOutput, CBRS_ALIGN_RIGHT);都不能让“任务面板窗口”停靠在“输出窗口”旁。 请各位大侠帮帮忙,看看如何让自己添加的控件停靠在指定的位置???
调试欢乐多
m_pWndToolBoxBar.EnableDocking(CBRS_ALIGN_RIGHT);
bNameValid = strOutputWnd.LoadString(IDS_PANE_OUTPUT);
ASSERT(bNameValid);
if (!m_wndOutput.Create(strOutputWnd, this, CRect(0, 0, 300, 400), TRUE, ID_OUTPUT, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_RIGHT | CBRS_FLOAT_MULTI))
{
TRACE0("Failed to create Output window\n");
return FALSE;
} // Create detail window
CString strDetailWnd = _T("");
bNameValid = strDetailWnd.LoadString(IDS_DETAIL_WND);
ASSERT(bNameValid);
if (!m_pwndDetail->Create(strDetailWnd, this, CRect(0, 0, 300, 400), TRUE, ID_DETAIL, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_RIGHT | CBRS_FLOAT_MULTI))
{
TRACE0("Failed to create Detail window\n");
return FALSE;
}
m_pwndDetail->EnableDocking(CBRS_ALIGN_ANY);
m_wndOutput.EnableDocking(CBRS_ALIGN_ANY); DockPane(m_pwndDetail);
m_wndOutput.DockToWindow(m_pwndDetail, CBRS_ALIGN_BOTTOM);创建时m_pwndDetail和m_wndOutput默认右边 CBRS_RIGHT通过m_wndOutput.DockToWindow(m_pwndDetail, CBRS_ALIGN_BOTTOM);使得m_wndOutput停靠在m_pwndDetail的下部, 也就是右下部.