共用方式為


CMultiPaneFrameWnd 類別

類別 CMultiPaneFrameWnd擴充 CPaneFrameWnd 類別。 這可以支援多個窗格。 除了控制列的單一內嵌句柄,還包含 CPaneContainerManager Class 物件,CMultiPaneFrameWnd讓使用者可以彼此停駐CMultiPaneFrameWnd,並動態建立多個浮動索引卷標式視窗。

如需更多詳細資料,請參閱 Visual Studio 安裝位置下之 VC\atlmfc\src\mfc 資料夾中的原始程式碼。

語法

class CMultiPaneFrameWnd : public CPaneFrameWnd

成員

公用方法

名稱 描述
CMultiPaneFrameWnd::AddPane 加入窗格。 (覆寫 CPaneFrameWnd::AddPane.)
CMultiPaneFrameWnd::AddRecentPane
CMultiPaneFrameWnd::AdjustLayout 調整迷你框架視窗的配置。 (覆寫 CPaneFrameWnd::AdjustLayout.)
CMultiPaneFrameWnd::AdjustPaneFrames (覆寫 CPaneFrameWnd::AdjustPaneFrames.)
CMultiPaneFrameWnd::CalcExpectedDockedRect 計算停駐窗口的預期矩形。 (覆寫 CPaneFrameWnd::CalcExpectedDockedRect.)
CMultiPaneFrameWnd::CanBeAttached 判斷目前的窗格是否可以停駐到另一個窗格或框架視窗。 (覆寫 CPaneFrameWnd::CanBeAttached.)
CMultiPaneFrameWnd::CanBeDockedToPane 判斷迷你框架視窗是否可以停駐到窗格。 (覆寫 CPaneFrameWnd::CanBeDockedToPane.)
CMultiPaneFrameWnd::CheckGripperVisibility (覆寫 CPaneFrameWnd::CheckGripperVisibility.)
CMultiPaneFrameWnd::CloseMiniFrame (覆寫 CPaneFrameWnd::CloseMiniFrame。)
CMultiPaneFrameWnd::ConvertToTabbedDocument 將窗格轉換為索引標籤式文件。 (覆寫 CPaneFrameWnd::ConvertToTabbedDocument.)
CMultiPaneFrameWnd::D ockFrame
CMultiPaneFrameWnd::D ockPane 固定窗格。 (覆寫 CPaneFrameWnd::D ockPane.)
CMultiPaneFrameWnd::D ockRecentPaneToMainFrame
CMultiPaneFrameWnd::GetCaptionText 傳回標題文字。 (覆寫 CPaneFrameWnd::GetCaptionText.)
CMultiPaneFrameWnd::GetPaneContainerManager 傳回內部容器管理員對象的參考。
CMultiPaneFrameWnd::GetFirstVisiblePane 傳回包含在迷你框架視窗中的第一個可見窗格。 (覆寫 CPaneFrameWnd::GetFirstVisiblePane.)
CMultiPaneFrameWnd::GetPane 傳回包含在迷你框架視窗中的窗格。 (覆寫 CPaneFrameWnd::GetPane.)
CMultiPaneFrameWnd::GetPaneCount 傳回包含在迷你框架視窗中的窗格數目。 (覆寫 CPaneFrameWnd::GetPaneCount.)
CMultiPaneFrameWnd::GetVisiblePaneCount 傳回包含在迷你框架視窗中的可見窗格數目。 (覆寫 CPaneFrameWnd::GetVisiblePaneCount.)
CMultiPaneFrameWnd::InsertPane
CMultiPaneFrameWnd::LoadState 從登錄載入窗格的狀態。 (覆寫 CPaneFrameWnd::LoadState.)
CMultiPaneFrameWnd::OnDockToRecentPos 將迷你框架視窗固定在其最近的位置上。 (覆寫 CPaneFrameWnd::OnDockToRecentPos.)
CMultiPaneFrameWnd::OnKillRollUpTimer 停止彙總計時器。 (覆寫 CPaneFrameWnd::OnKillRollUpTimer.)
CMultiPaneFrameWnd::OnPaneRecalcLayout 調整迷你框架視窗內窗格的配置。 (覆寫 CPaneFrameWnd::OnPaneRecalcLayout.)
CMultiPaneFrameWnd::OnSetRollUpTimer 設定彙總計時器。 (覆寫 CPaneFrameWnd::OnSetRollUpTimer.)
CMultiPaneFrameWnd::OnShowPane 在隱藏或顯示迷你框架視窗中的窗格時,由架構呼叫。 (覆寫 CPaneFrameWnd::OnShowPane.)
CMultiPaneFrameWnd::P aneFromPoint 如果在迷你框架視窗內包含使用者提供的點,則會傳回一個窗格。 (覆寫 CPaneFrameWnd::P aneFromPoint.)
CMultiPaneFrameWnd::RemoveNonValidPanes 由架構呼叫以移除無效窗格。 (覆寫 CPaneFrameWnd::RemoveNonValidPanes.)
CMultiPaneFrameWnd::RemovePane 從迷你框架視窗中移除窗格。 (覆寫 CPaneFrameWnd::RemovePane.)
CMultiPaneFrameWnd::ReplacePane 以一個窗格取代另一個。 (覆寫 CPaneFrameWnd::ReplacePane.)
CMultiPaneFrameWnd::SaveState 將窗格的狀態儲存至登錄。 (覆寫 CPaneFrameWnd::SaveState.)
CMultiPaneFrameWnd::Serialize (覆寫 CPaneFrameWnd::Serialize。)
CMultiPaneFrameWnd::SetDockState 設定固定狀態。 (覆寫 CPaneFrameWnd::SetDockState.)
CMultiPaneFrameWnd::SetLastFocusedPane
CMultiPaneFrameWnd::SetPreDockState 設定預先模擬狀態。 (覆寫 CPaneFrameWnd::SetPreDockState.)
CMultiPaneFrameWnd::StoreRecentDockSiteInfo (覆寫 CPaneFrameWnd::StoreRecentDockSiteInfo.)
CMultiPaneFrameWnd::StoreRecentTabRelatedInfo (覆寫 CPaneFrameWnd::StoreRecentTabRelatedInfo.)

備註

這個類別中的大部分方法都會覆寫 CPaneFrameWnd 類別的方法。

如果窗格使用AFX_CBRS_AUTO_ROLLUP樣式,而使用者將該窗格停駐到多窗格框架視窗,則無論其他停駐窗格的樣式設定為何,使用者都可以匯總視窗。

當使用者浮動使用CBRS_FLOAT_MULTI樣式的窗格時,架構會自動建立 CMultiPaneFrameWnd 物件。

如需從 CPaneFrameWnd 類別衍生類別並動態建立它的相關信息,請參閱 CPaneFrameWnd

範例

下列範例示範如何擷取 物件的指標 CMultiPaneFrameWnd 。 此程式碼片段是設定窗格大小範例的一部分。

// CDockablePane* pBar
CMultiPaneFrameWnd *pParentMiniFrame =
    DYNAMIC_DOWNCAST(CMultiPaneFrameWnd, pBar->GetParentMiniFrame());

繼承階層架構

CObject

CCmdTarget

CWnd

CPaneFrameWnd

CMultiPaneFrameWnd

需求

標頭: afxMultiPaneFrameWnd.h

CMultiPaneFrameWnd::AddPane

virtual void AddPane(CBasePane* pWnd);

參數

[in] pWnd

備註

CMultiPaneFrameWnd::AddRecentPane

virtual BOOL AddRecentPane(CDockablePane* pBar);

參數

[in] pBar

傳回值

備註

CMultiPaneFrameWnd::AdjustLayout

virtual void AdjustLayout();

備註

CMultiPaneFrameWnd::AdjustPaneFrames

virtual void AdjustPaneFrames();

備註

CMultiPaneFrameWnd::CalcExpectedDockedRect

virtual void CalcExpectedDockedRect(
    CWnd* pWndToDock,
    CPoint ptMouse,
    CRect& rectResult,
    BOOL& bDrawTab,
    CDockablePane** ppTargetBar);

參數

[in] pWndToDock
[in] ptMouse
[in] rectResult
[in] bDrawTab
[in] ppTargetBar

備註

CMultiPaneFrameWnd::CanBeAttached

virtual BOOL CanBeAttached() const;

傳回值

備註

CMultiPaneFrameWnd::CanBeDockedToPane

virtual BOOL CanBeDockedToPane(const CDockablePane* pDockingBar) const;

參數

[in] pDockingBar

傳回值

備註

CMultiPaneFrameWnd::CheckGripperVisibility

virtual void CheckGripperVisibility();

備註

CMultiPaneFrameWnd::CloseMiniFrame

virtual void CloseMiniFrame();

備註

CMultiPaneFrameWnd::ConvertToTabbedDocument

virtual void ConvertToTabbedDocument();

備註

CMultiPaneFrameWnd::D ockFrame

virtual BOOL DockFrame(
    CPaneFrameWnd* pDockedFrame,
    AFX_DOCK_METHOD dockMethod);

參數

[in] pDockedFrame
[in] dockMethod

傳回值

備註

CMultiPaneFrameWnd::D ockPane

virtual BOOL DockPane(CDockablePane* pDockedBar);

參數

[in] pDockedBar

傳回值

備註

CMultiPaneFrameWnd::D ockRecentPaneToMainFrame

virtual void DockRecentPaneToMainFrame(CDockablePane* pBar);

參數

[in] pBar

備註

CMultiPaneFrameWnd::GetCaptionText

virtual CString GetCaptionText();

傳回值

備註

CMultiPaneFrameWnd::GetFirstVisiblePane

virtual CWnd* GetFirstVisiblePane() const;

傳回值

備註

CMultiPaneFrameWnd::GetPane

virtual CWnd* GetPane() const;

傳回值

備註

CMultiPaneFrameWnd::GetPaneContainerManager

傳回內部容器管理員對象的參考。

CPaneContainerManager& GetPaneContainerManager();

傳回值

內部容器管理員對象的參考。

備註

這個方法可用來存取內部 CPaneContainerManager Class 物件。

CMultiPaneFrameWnd::GetPaneCount

virtual int GetPaneCount() const;

傳回值

備註

CMultiPaneFrameWnd::GetVisiblePaneCount

virtual int GetVisiblePaneCount() const;

傳回值

備註

CMultiPaneFrameWnd::InsertPane

virtual BOOL InsertPane(
    CBasePane* pControlBar,
    CBasePane* pTarget,
    BOOL bAfter);

參數

[in] pControlBar
[in] pTarget
[in] bAfter

傳回值

備註

CMultiPaneFrameWnd::LoadState

virtual BOOL LoadState(
    LPCTSTR lpszProfileName = NULL,
    UINT uiID = (UINT) -1);

參數

[in] lpszProfileName
[in] uiID

傳回值

備註

CMultiPaneFrameWnd::OnDockToRecentPos

virtual void OnDockToRecentPos();

備註

CMultiPaneFrameWnd::OnKillRollUpTimer

virtual void OnKillRollUpTimer();

備註

CMultiPaneFrameWnd::OnPaneRecalcLayout

virtual void OnPaneRecalcLayout();

備註

CMultiPaneFrameWnd::OnSetRollUpTimer

virtual void OnSetRollUpTimer();

備註

CMultiPaneFrameWnd::OnShowPane

virtual void OnShowPane(
    CDockablePane* pBar,
    BOOL bShow);

參數

[in] pBar
[in] bShow

備註

CMultiPaneFrameWnd::P aneFromPoint

virtual CBasePane* PaneFromPoint(
    CPoint point,
    int nSensitivity,
    BOOL bCheckVisibility);

參數

[in]
[in] nSensitivity
[in] bCheckVisibility

傳回值

備註

CMultiPaneFrameWnd::RemoveNonValidPanes

virtual void RemoveNonValidPanes();

備註

CMultiPaneFrameWnd::RemovePane

virtual void RemovePane(
    CBasePane* pBar,
    BOOL bDestroy = FALSE,
    BOOL bNoDelayedDestroy = TRUE);

參數

[in] pBar
[in] bDestroy
[in] bNoDelayedDestroy

備註

CMultiPaneFrameWnd::ReplacePane

virtual void ReplacePane(
    CBasePane* pBarOrg,
    CBasePane* pBarReplaceWith);

參數

[in] pBarOrg
[in] pBarReplaceWith

備註

CMultiPaneFrameWnd::SaveState

virtual BOOL SaveState(
    LPCTSTR lpszProfileName = NULL,
    UINT uiID = (UINT) -1);

參數

[in] lpszProfileName
[in] uiID

傳回值

備註

CMultiPaneFrameWnd::Serialize

virtual void Serialize(CArchive& ar);

參數

[in] ar

備註

CMultiPaneFrameWnd::SetDockState

virtual void SetDockState(CDockingManager* pDockManager);

參數

[in] pDockManager

備註

CMultiPaneFrameWnd::SetLastFocusedPane

void SetLastFocusedPane(HWND hwnd);

參數

[in] hwnd

備註

CMultiPaneFrameWnd::SetPreDockState

virtual BOOL SetPreDockState(
    AFX_PREDOCK_STATE preDockState,
    CBasePane* pBarToDock = NULL,
    AFX_DOCK_METHOD dockMethod = DM_MOUSE);

參數

[in] preDockState
[in] pBarToDock
[in] dockMethod

傳回值

備註

CMultiPaneFrameWnd::StoreRecentDockSiteInfo

virtual void StoreRecentDockSiteInfo(CPane* pBar);

參數

[in] pBar

備註

CMultiPaneFrameWnd::StoreRecentTabRelatedInfo

virtual void StoreRecentTabRelatedInfo(
    CDockablePane* pDockingBar,
    CDockablePane* pTabbedBar);

參數

[in] pDockingBar
[in] pTabbedBar

備註

另請參閱

階層架構圖表
類別
CPaneFrameWnd 類別