CMultiPaneFrameWnd Class
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at CMultiPaneFrameWnd Class.
The CMultiPaneFrameWnd
class extends CPaneFrameWnd Class. It can support multiple panes. Instead of a single embedded handle to a control bar, CMultiPaneFrameWnd
contains a CPaneContainerManager Class object that enables the user to dock one CMultiPaneFrameWnd
to another and dynamically create multiple floating, tabbed windows.
Syntax
class CMultiPaneFrameWnd : public CPaneFrameWnd
Members
Public Methods
Name | Description |
---|---|
CMultiPaneFrameWnd::AddPane | Adds a pane. (Overrides CPaneFrameWnd::AddPane.) |
CMultiPaneFrameWnd::AddRecentPane | |
CMultiPaneFrameWnd::AdjustLayout | Adjusts the layout of the mini-frame window. (Overrides CPaneFrameWnd::AdjustLayout.) |
CMultiPaneFrameWnd::AdjustPaneFrames | (Overrides CPaneFrameWnd::AdjustPaneFrames.) |
CMultiPaneFrameWnd::CalcExpectedDockedRect | Calculates the expected rectangle of a docked window. (Overrides CPaneFrameWnd::CalcExpectedDockedRect.) |
CMultiPaneFrameWnd::CanBeAttached | Determines whether the current pane can dock to another pane or frame window. (Overrides CPaneFrameWnd::CanBeAttached.) |
CMultiPaneFrameWnd::CanBeDockedToPane | Determines whether the mini-frame window can dock to a pane. (Overrides CPaneFrameWnd::CanBeDockedToPane.) |
CMultiPaneFrameWnd::CheckGripperVisibility | (Overrides CPaneFrameWnd::CheckGripperVisibility.) |
CMultiPaneFrameWnd::CloseMiniFrame | (Overrides CPaneFrameWnd::CloseMiniFrame .) |
CMultiPaneFrameWnd::ConvertToTabbedDocument | Converts the pane to a tabbed document. (Overrides CPaneFrameWnd::ConvertToTabbedDocument.) |
CMultiPaneFrameWnd::DockFrame | |
CMultiPaneFrameWnd::DockPane | Docks the pane. (Overrides CPaneFrameWnd::DockPane.) |
CMultiPaneFrameWnd::DockRecentPaneToMainFrame | |
CMultiPaneFrameWnd::GetCaptionText | Returns the caption text. (Overrides CPaneFrameWnd::GetCaptionText.) |
CMultiPaneFrameWnd::GetPaneContainerManager | Returns a reference to the internal container manager object. |
CMultiPaneFrameWnd::GetFirstVisiblePane | Returns the first visible pane that is contained in a mini-frame window. (Overrides CPaneFrameWnd::GetFirstVisiblePane.) |
CMultiPaneFrameWnd::GetPane | Returns a pane that is contained in the mini-frame window. (Overrides CPaneFrameWnd::GetPane.) |
CMultiPaneFrameWnd::GetPaneCount | Returns the number of panes that are contained in a mini-frame window. (Overrides CPaneFrameWnd::GetPaneCount.) |
CMultiPaneFrameWnd::GetVisiblePaneCount | Returns the number of visible panes that are contained in a mini-frame window. (Overrides CPaneFrameWnd::GetVisiblePaneCount.) |
CMultiPaneFrameWnd::InsertPane | |
CMultiPaneFrameWnd::LoadState | Loads the pane's state from the registry. (Overrides CPaneFrameWnd::LoadState.) |
CMultiPaneFrameWnd::OnDockToRecentPos | Docks the mini-frame window at its most recent position. (Overrides CPaneFrameWnd::OnDockToRecentPos.) |
CMultiPaneFrameWnd::OnKillRollUpTimer | Stops the rollup timer. (Overrides CPaneFrameWnd::OnKillRollUpTimer.) |
CMultiPaneFrameWnd::OnPaneRecalcLayout | Adjusts the layout of a pane inside a mini-frame window. (Overrides CPaneFrameWnd::OnPaneRecalcLayout.) |
CMultiPaneFrameWnd::OnSetRollUpTimer | Sets the rollup timer. (Overrides CPaneFrameWnd::OnSetRollUpTimer.) |
CMultiPaneFrameWnd::OnShowPane | Called by the framework when a pane in the mini-frame window is hidden or displayed. (Overrides CPaneFrameWnd::OnShowPane.) |
CMultiPaneFrameWnd::PaneFromPoint | Returns a pane if it contains a user-supplied point inside a mini-frame window. (Overrides CPaneFrameWnd::PaneFromPoint.) |
CMultiPaneFrameWnd::RemoveNonValidPanes | Called by the framework to remove non-valid panes. (Overrides CPaneFrameWnd::RemoveNonValidPanes.) |
CMultiPaneFrameWnd::RemovePane | Removes a pane from the mini-frame window. (Overrides CPaneFrameWnd::RemovePane.) |
CMultiPaneFrameWnd::ReplacePane | Replaces one pane with another. (Overrides CPaneFrameWnd::ReplacePane.) |
CMultiPaneFrameWnd::SaveState | Saves the pane's state to the registry. (Overrides CPaneFrameWnd::SaveState.) |
CMultiPaneFrameWnd::Serialize | (Overrides CPaneFrameWnd::Serialize .) |
CMultiPaneFrameWnd::SetDockState | Sets the docking state. (Overrides CPaneFrameWnd::SetDockState.) |
CMultiPaneFrameWnd::SetLastFocusedPane | |
CMultiPaneFrameWnd::SetPreDockState | Sets the predocking state. (Overrides CPaneFrameWnd::SetPreDockState.) |
CMultiPaneFrameWnd::StoreRecentDockSiteInfo | (Overrides CPaneFrameWnd::StoreRecentDockSiteInfo.) |
CMultiPaneFrameWnd::StoreRecentTabRelatedInfo | (Overrides CPaneFrameWnd::StoreRecentTabRelatedInfo.) |
Remarks
Most of the methods in this class override methods in the CPaneFrameWnd Class class.
If a pane uses the AFX_CBRS_AUTO_ROLLUP
style and the user docks that pane to a multi-pane frame window, the user can roll up the window regardless of the style settings of the other docked panes.
The framework automatically creates a CMultiPaneFrameWnd
object when the user floats a pane that uses the CBRS_FLOAT_MULTI
style.
For information about deriving a class from the CPaneFrameWnd
class and creating it dynamically, see CPaneFrameWnd.
Example
The following example demonstrates how to retrieve a pointer to a CMultiPaneFrameWnd
object. This code snippet is part of the Set Pane Size sample.
// CDockablePane* pBar
CMultiPaneFrameWnd* pParentMiniFrame =
DYNAMIC_DOWNCAST (CMultiPaneFrameWnd, pBar->GetParentMiniFrame ()) ;
Inheritance Hierarchy
Requirements
Header: afxMultiPaneFrameWnd.h
CMultiPaneFrameWnd::AddPane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void AddPane(CBasePane* pWnd);
Parameters
[in] pWnd
Remarks
CMultiPaneFrameWnd::AddRecentPane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual BOOL AddRecentPane(CDockablePane* pBar);
Parameters
[in] pBar
Return Value
Remarks
CMultiPaneFrameWnd::AdjustLayout
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void AdjustLayout();
Remarks
CMultiPaneFrameWnd::AdjustPaneFrames
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void AdjustPaneFrames();
Remarks
CMultiPaneFrameWnd::CalcExpectedDockedRect
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void CalcExpectedDockedRect(
CWnd* pWndToDock,
CPoint ptMouse,
CRect& rectResult,
BOOL& bDrawTab,
CDockablePane** ppTargetBar);
Parameters
[in] pWndToDock
[in] ptMouse
[in] rectResult
[in] bDrawTab
[in] ppTargetBar
Remarks
CMultiPaneFrameWnd::CanBeAttached
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual BOOL CanBeAttached() const;
Return Value
Remarks
CMultiPaneFrameWnd::CanBeDockedToPane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual BOOL CanBeDockedToPane(const CDockablePane* pDockingBar) const;
Parameters
[in] pDockingBar
Return Value
Remarks
CMultiPaneFrameWnd::CheckGripperVisibility
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void CheckGripperVisibility();
Remarks
CMultiPaneFrameWnd::CloseMiniFrame
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void CloseMiniFrame();
Remarks
CMultiPaneFrameWnd::ConvertToTabbedDocument
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void ConvertToTabbedDocument();
Remarks
CMultiPaneFrameWnd::DockFrame
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual BOOL DockFrame(
CPaneFrameWnd* pDockedFrame,
AFX_DOCK_METHOD dockMethod);
Parameters
[in] pDockedFrame
[in] dockMethod
Return Value
Remarks
CMultiPaneFrameWnd::DockPane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual BOOL DockPane(CDockablePane* pDockedBar);
Parameters
[in] pDockedBar
Return Value
Remarks
CMultiPaneFrameWnd::DockRecentPaneToMainFrame
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void DockRecentPaneToMainFrame(CDockablePane* pBar);
Parameters
[in] pBar
Remarks
CMultiPaneFrameWnd::GetCaptionText
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual CString GetCaptionText();
Return Value
Remarks
CMultiPaneFrameWnd::GetFirstVisiblePane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual CWnd* GetFirstVisiblePane() const;
Return Value
Remarks
CMultiPaneFrameWnd::GetPane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual CWnd* GetPane() const;
Return Value
Remarks
CMultiPaneFrameWnd::GetPaneContainerManager
Returns a reference to the internal container manager object.
CPaneContainerManager& GetPaneContainerManager();
Return Value
A reference to the internal container manager object.
Remarks
This method can be used to access the internal CPaneContainerManager Class object.
CMultiPaneFrameWnd::GetPaneCount
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual int GetPaneCount() const;
Return Value
Remarks
CMultiPaneFrameWnd::GetVisiblePaneCount
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual int GetVisiblePaneCount() const;
Return Value
Remarks
CMultiPaneFrameWnd::InsertPane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual BOOL InsertPane(
CBasePane* pControlBar,
CBasePane* pTarget,
BOOL bAfter);
Parameters
[in] pControlBar
[in] pTarget
[in] bAfter
Return Value
Remarks
CMultiPaneFrameWnd::LoadState
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual BOOL LoadState(
LPCTSTR lpszProfileName = NULL,
UINT uiID = (UINT) -1);
Parameters
[in] lpszProfileName
[in] uiID
Return Value
Remarks
CMultiPaneFrameWnd::OnDockToRecentPos
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void OnDockToRecentPos();
Remarks
CMultiPaneFrameWnd::OnKillRollUpTimer
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void OnKillRollUpTimer();
Remarks
CMultiPaneFrameWnd::OnPaneRecalcLayout
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void OnPaneRecalcLayout();
Remarks
CMultiPaneFrameWnd::OnSetRollUpTimer
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void OnSetRollUpTimer();
Remarks
CMultiPaneFrameWnd::OnShowPane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void OnShowPane(
CDockablePane* pBar,
BOOL bShow);
Parameters
[in] pBar
[in] bShow
Remarks
CMultiPaneFrameWnd::PaneFromPoint
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual CBasePane* PaneFromPoint(
CPoint point,
int nSensitivity,
BOOL bCheckVisibility);
Parameters
[in] point
[in] nSensitivity
[in] bCheckVisibility
Return Value
Remarks
CMultiPaneFrameWnd::RemoveNonValidPanes
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void RemoveNonValidPanes();
Remarks
CMultiPaneFrameWnd::RemovePane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void RemovePane(
CBasePane* pBar,
BOOL bDestroy = FALSE,
BOOL bNoDelayedDestroy = TRUE);
Parameters
[in] pBar
[in] bDestroy
[in] bNoDelayedDestroy
Remarks
CMultiPaneFrameWnd::ReplacePane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void ReplacePane(
CBasePane* pBarOrg,
CBasePane* pBarReplaceWith);
Parameters
[in] pBarOrg
[in] pBarReplaceWith
Remarks
CMultiPaneFrameWnd::SaveState
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual BOOL SaveState(
LPCTSTR lpszProfileName = NULL,
UINT uiID = (UINT) -1);
Parameters
[in] lpszProfileName
[in] uiID
Return Value
Remarks
CMultiPaneFrameWnd::Serialize
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void Serialize(CArchive& ar);
Parameters
[in] ar
Remarks
CMultiPaneFrameWnd::SetDockState
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void SetDockState(CDockingManager* pDockManager);
Parameters
[in] pDockManager
Remarks
CMultiPaneFrameWnd::SetLastFocusedPane
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
void SetLastFocusedPane(HWND hwnd);
Parameters
[in] hwnd
Remarks
CMultiPaneFrameWnd::SetPreDockState
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual BOOL SetPreDockState(
AFX_PREDOCK_STATE preDockState,
CBasePane* pBarToDock = NULL,
AFX_DOCK_METHOD dockMethod = DM_MOUSE);
Parameters
[in] preDockState
[in] pBarToDock
[in] dockMethod
Return Value
Remarks
CMultiPaneFrameWnd::StoreRecentDockSiteInfo
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void StoreRecentDockSiteInfo(CPane* pBar);
Parameters
[in] pBar
Remarks
CMultiPaneFrameWnd::StoreRecentTabRelatedInfo
This topic is included for completeness. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
virtual void StoreRecentTabRelatedInfo(
CDockablePane* pDockingBar,
CDockablePane* pTabbedBar);
Parameters
[in] pDockingBar
[in] pTabbedBar