CMultiPaneFrameWnd 類別
類別 CMultiPaneFrameWnd
會 擴充 CPaneFrameWnd 類別。 這可以支援多個窗格。 除了控制列的單一內嵌句柄,還包含 CPaneContainerManager Class 物件,CMultiPaneFrameWnd
讓使用者可以彼此停駐CMultiPaneFrameWnd
,並動態建立多個浮動索引卷標式視窗。
如需更多詳細資料,請參閱 Visual Studio 安裝位置下之 VC\atlmfc\src\mfc 資料夾中的原始程式碼。
語法
class CMultiPaneFrameWnd : public CPaneFrameWnd
成員
公用方法
備註
這個類別中的大部分方法都會覆寫 CPaneFrameWnd 類別中的方法。
如果窗格使用AFX_CBRS_AUTO_ROLLUP樣式,而使用者將該窗格停駐到多窗格框架視窗,則無論其他停駐窗格的樣式設定為何,使用者都可以匯總視窗。
當使用者浮動使用CBRS_FLOAT_MULTI樣式的窗格時,架構會自動建立 CMultiPaneFrameWnd
物件。
如需從 CPaneFrameWnd
類別衍生類別並動態建立它的相關信息,請參閱 CPaneFrameWnd。
範例
下列範例示範如何擷取 物件的指標 CMultiPaneFrameWnd
。 此程式碼片段是設定窗格大小範例的一部分。
// CDockablePane* pBar
CMultiPaneFrameWnd *pParentMiniFrame =
DYNAMIC_DOWNCAST(CMultiPaneFrameWnd, pBar->GetParentMiniFrame());
繼承階層架構
需求
標頭: 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