Compartir a través de


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

CObject

CCmdTarget

CWnd

CPaneFrameWnd

CMultiPaneFrameWnd

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

Remarks

See Also

Hierarchy Chart
Classes
CPaneFrameWnd Class