CMultiPaneFrameWnd 类

CMultiPaneFrameWnd 类扩展 CPaneFrameWnd 类。 它可支持多个窗格。 CMultiPaneFrameWnd 包含 CPaneContainerManager Class 对象而非控件条的单个嵌入句柄,此对象使用户能够将一个 CMultiPaneFrameWnd 停靠到另一个窗口,并动态创建多个浮动选项卡式窗口。

有关详细信息,请参阅所安装的 Visual Studio 的 C\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::DockFrame
CMultiPaneFrameWnd::DockPane 停靠窗格。 (重写 CPaneFrameWnd::DockPane。)
CMultiPaneFrameWnd::DockRecentPaneToMainFrame
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::PaneFromPoint 如果窗格在微型框架窗口内包含用户提供的点,则返回窗格。 (重写 CPaneFrameWnd::PaneFromPoint。)
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::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

备注

另请参阅

层次结构图

CPaneFrameWnd 类