1.控制多个CDockablePane停靠在一起时,先停靠一个窗口:
DockPane(&m_dockPane1);//使用CFrameWndEx::DockPane()
void DockPane(
CBasePane* pBar, //A pointer to the control bar to be docked.
UINT nDockBarID=0, //The ID of the side of the frame window to dock to.控制停靠位置
LPCRECT lpRect=NULL
);
在该窗口的位置继续停靠其他窗口:
m_dockPane2.AttachToTabWnd();//使用CDockablePane::AttachToTabWnd()
virtual CDockablePane* AttachToTabWnd(
CDockablePane* pTabControlBarAttachTo,//停靠到
AFX_DOCK_METHOD dockMethod, //停靠方式,DM_SHOW
BOOL bSetActive = TRUE, //TRUE to activate the tabbed pane after the attach operation; otherwise, FALSE.
CDockablePane** ppTabbedControlBar = NULL
);
需要注意的是,在DockPane的时候控制停靠的位置,在AttachToTabWnd时控制最后被激活的页面。
To make your tab have Outlook style, pass AFX_CBRS_OUTLOOK_TABS
as the seventh argument to the Create
function when creating your pane.
2.Tips