CMultiPaneFrameWnd 类
该 CMultiPaneFrameWnd
类扩展 CPaneFrameWnd 类。 它可支持多个窗格。 CMultiPaneFrameWnd
包含 CPaneContainerManager Class 对象而非控件条的单个嵌入句柄,此对象使用户能够将一个 CMultiPaneFrameWnd
停靠到另一个窗口,并动态创建多个浮动选项卡式窗口。
有关详细信息,请参阅所安装的 Visual Studio 的 C\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::DockFrame
virtual BOOL DockFrame(
CPaneFrameWnd* pDockedFrame,
AFX_DOCK_METHOD dockMethod);
参数
[in] pDockedFrame
[in] dockMethod
返回值
注解
CMultiPaneFrameWnd::DockPane
virtual BOOL DockPane(CDockablePane* pDockedBar);
参数
[in] pDockedBar
返回值
备注
CMultiPaneFrameWnd::DockRecentPaneToMainFrame
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 类 对象。
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::PaneFromPoint
virtual CBasePane* PaneFromPoint(
CPoint point,
int nSensitivity,
BOOL bCheckVisibility);
参数
[in] point
[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