CDockablePane

实现可在停靠站点停靠或包含在选项卡式窗格中的窗格。

语法

class CDockablePane : public CPane

成员

公共构造函数

名称 描述
CDockablePane::CDockablePane 构造并初始化一个 CDockablePane 对象。

公共方法

名称 描述
CDockablePane::AttachToTabWnd 将一个窗格附加到另一个窗格。 这会创建选项卡式窗格。
CDockablePane::CalcFixedLayout 返回窗格矩形的大小。
CDockablePane::CanAcceptMiniFrame 确定是否可以将指定的微型框停靠到窗格。
CDockablePane::CanAcceptPane 确定是否可以将另一个窗格停靠到当前窗格。
CDockablePane::CanAutoHide 确定窗格是否支持自动隐藏模式。 (替代 CBasePane::CanAutoHide。)
CDockablePane::CanBeAttached 确定是否可将当前窗格停靠到另一个窗格。
CDockablePane::ConvertToTabbedDocument 将一个或多个可停靠的窗格转换为 MDI 选项卡式文档。
CDockablePane::CopyState 复制可停靠的窗格的状态。
CDockablePane::Create 创建 Windows 控件并将其附加到 CDockablePane 对象。
CDockablePane::CreateDefaultPaneDivider 为窗格创建默认分隔符,因为它将停靠到框架窗口。
CDockablePane::CreateEx 创建 Windows 控件并将其附加到 CDockablePane 对象。
CDockablePane::CreateTabbedPane 从当前窗格创建选项卡式窗格。
CDockablePane::DockPaneContainer 将容器停靠到窗格。
CDockablePane::DockPaneStandard 使用轮廓(标准)停靠来停靠窗格。
CDockablePane::DockToFrameWindow 内部使用。 若要停靠窗格,请使用 CPane::DockPaneCDockablePane::DockToWindow
CDockablePane::DockToRecentPos 将窗格停靠到存储的最新停靠位置。
CDockablePane::DockToWindow 将一个停靠窗格停靠到另一个停靠窗格。
CDockablePane::EnableAutohideAll 启用或禁用此窗格以及容器中的其他窗格的自动隐藏模式。
CDockablePane::EnableGripper 显示或隐藏标题栏(控制手柄)。
CDockablePane::GetAHRestoredRect 指定在自动隐藏模式下可见的窗格的位置。
CDockablePane::GetAHSlideMode 检索窗格的自动隐藏幻灯片模式。
CDockablePane::GetAutoHideButton 内部使用。
CDockablePane::GetAutoHideToolBar 内部使用。
CDockablePane::GetCaptionHeight 返回当前标题栏的高度。
CDockablePane::GetDefaultPaneDivider 返回窗格的容器的默认窗格分隔符。
CDockablePane::GetDockingStatus 确定基于提供的指针位置停靠窗格的功能。
CDockablePane::GetDragSensitivity 返回停靠窗格的拖动敏感度。
CDockablePane::GetLastPercentInPaneContainer 检索窗格在其容器中占用的空间百分比。
CDockablePane::GetTabArea 检索窗格的选项卡区域。
CDockablePane::GetTabbedPaneRTC 返回当另一个窗格停靠到当前窗格时创建的选项卡式窗口的运行时类信息。
CDockablePane::HasAutoHideMode 指定是否可以将停靠窗格切换到自动隐藏模式。
CDockablePane::HitTest 指定用户在窗格中单击鼠标时的具体位置。
CDockablePane::IsAccessibilityCompatible 内部使用。
CDockablePane::IsAutohideAllEnabled 指示是否可以将停靠窗格和容器中的所有其他窗格置于自动隐藏模式。
CDockablePane::IsAutoHideMode 确定窗格是否处于自动隐藏模式。
CDockablePane::IsChangeState 内部使用。
CDockablePane::IsDocked 确定当前窗格是否已停靠。
CDockablePane::IsHideInAutoHideMode 在通过调用 ShowPane 来显示(或隐藏)窗格的情况下,确定处于自动隐藏模式的窗格的行为。
CDockablePane::IsInFloatingMultiPaneFrameWnd 指定窗格是否位于多窗格框架窗口中。
CDockablePane::IsResizable 指定窗格是否可重设大小。
CDockablePane::IsTabLocationBottom 指定选项卡位于窗格的顶部还是底部。
CDockablePane::IsTracked 指定用户是否在拖动窗格。
CDockablePane::IsVisible 确定当前窗格是否可见。
CDockablePane::LoadState 内部使用。
CDockablePane::OnAfterChangeParent 在窗格的父级发生更改时由框架调用。 (替代 CPane::OnAfterChangeParent。)
CDockablePane::OnAfterDockFromMiniFrame 当浮动停靠栏停靠在框架窗口中时由框架调用。
CDockablePane::OnBeforeChangeParent 在窗格的父级将要更改时由框架调用。 (替代 CPane::OnBeforeChangeParent。)
CDockablePane::OnBeforeFloat 在窗格即将悬浮时由框架调用。 (替代 CPane::OnBeforeFloat。)
CDockablePane::RemoveFromDefaultPaneDividier 框架会在窗格取消停靠时调用此方法。
CDockablePane::ReplacePane 将窗格替换为指定的窗格。
CDockablePane::RestoreDefaultPaneDivider 框架会在反序列化窗格时调用此方法,以还原默认窗格分隔符。
CDockablePane::SaveState 内部使用。
CDockablePane::Serialize 序列化此窗格。 (替代 CBasePane::Serialize。)
CDockablePane::SetAutoHideMode 在可见模式和自动隐藏模式之间切换停靠窗格。
CDockablePane::SetAutoHideParents 设置窗格的自动隐藏按钮和自动隐藏工具栏。
CDockablePane::SetDefaultPaneDivider 内部使用。
CDockablePane::SetLastPercentInPaneContainer 设置窗格在其容器中占用的空间百分比。
CDockablePane::SetResizeMode 内部使用。
CDockablePane::SetRestoredDefaultPaneDivider 设置还原的默认窗格分隔符。
CDockablePane::SetTabbedPaneRTC 设置当两个窗格停靠在一起时创建的选项卡式窗口的运行时类信息。
CDockablePane::ShowPane 显示或隐藏窗格。
CDockablePane::Slide 显示或隐藏具有滑动动画的窗格,该动画仅在窗格处于自动隐藏模式时显示。
CDockablePane::ToggleAutoHide 切换自动隐藏模式。 (替代 CPane::ToggleAutoHide。)
CDockablePane::UndockPane 从主框架窗口或微型框窗口容器中取消停靠窗格。
CDockablePane::UnSetAutoHideMode 内部使用。 若要设置自动隐藏模式,请使用 CDockablePane::SetAutoHideMode

受保护方法

名称 描述
CDockablePane::CheckAutoHideCondition 确定停靠窗格是否已隐藏(在自动隐藏模式下)。
CDockablePane::CheckStopSlideCondition 确定自动隐藏停靠窗格应何时停止滑动。
CDockablePane::DrawCaption 绘制停靠窗格标题栏(控制手柄)。
CDockablePane::OnPressButtons 在用户按下除 AFX_HTCLOSEAFX_HTMAXBUTTON 按钮之外的标题按钮时调用。
CDockablePane::OnSlide 由框架调用,可在显示或隐藏窗格时呈现自动隐藏幻灯片效果。

数据成员

名称 描述
CDockablePane::m_bDisableAnimation 指定是否禁用可停靠的窗格的自动隐藏动画。
CDockablePane::m_bHideInAutoHideMode 确定窗格在处于自动隐藏模式时的行为。
CDockablePane::m_nSlideSteps 指定窗格在自动隐藏模式下显示或隐藏时的窗格动画速度。

备注

CDockablePane 实现以下功能:

  • 将窗格停靠到主框架窗口。

  • 将窗格切换到自动隐藏模式。

  • 将窗格附加到选项卡式窗口。

  • 在微型框窗口中浮动窗格。

  • 将一个窗格停靠到另一个浮动在微型框窗口中的窗格。

  • 重设窗格大小。

  • 加载和保存停靠窗格的状态。

    注意

    状态信息保存到 Windows 注册表。

  • 创建带或不带标题栏的窗格。 标题栏可以有文本标签,并且可以填充渐变色。

  • 在拖动窗格的同时显示窗格内容

  • 在拖动窗格的同时显示拖动矩形。

若要在应用程序中使用停靠窗格,请从 CDockablePane 类派生窗格类。 将派生的对象嵌入主框架窗口对象或控制窗格实例的窗口对象中。 然后,当你在主框架窗口中处理 WM_CREATE 消息时,调用 CDockablePane::Create 方法或 CDockablePane::CreateEx 方法。 最后,通过调用 CBasePane::EnableDockingCBasePane::DockPaneCDockablePane::AttachToTabWnd 设置窗格对象。

自定义提示

以下提示适用于 CDockablePane 对象:

  • 如果为两个非选项卡式的可停靠的窗格调用 CDockablePane::AttachToTabWnd,则会在 ppTabbedControlBar 参数中返回指向选项卡式窗口的指针。 可以使用此参数继续将选项卡添加到选项卡式窗口。

  • CDockablePane::AttachToTabWnd 创建的选项卡式窗格的类型取决于 pTabControlBarAttachTo 参数中的 CDockablePane 对象。 可以调用 CDockablePane::SetTabbedPaneRTC 来设置将由 CDockablePane 创建的选项卡式窗格的类型。 默认类型将在你首次创建 CDockablePane 时由 CDockablePane::CreatedwTabbedStyle 确定。 如果 dwTabbedStyleAFX_CBRS_OUTLOOK_TABS,则默认类型为 CMFCOutlookBar;如果 dwTabbedStyleAFX_CBRS_REGULAR_TABS,则默认类型为 CTabbedPane

  • 如果要将一个可停靠的窗格停靠到另一个窗格,请调用 CDockablePane::DockToWindow 方法。 在调用此方法之前,原始窗格必须停靠在某个位置。

  • 成员变量 CDockablePane::m_bHideInAutoHideMode 控制当你调用 CDockablePane::ShowPane 时可停靠的窗格在自动隐藏模式下的行为方式。 如果将此成员变量设置为 TRUE,则会隐藏可停靠的窗格及其自动隐藏按钮。 否则,它们会滑入和滑出。

  • 通过将 CDockablePane::m_bDisableAnimation 成员变量设置为 TRUE,可以禁用自动隐藏动画。

示例

以下示例演示如何使用 CDockablePane 类中的各种方法配置 CDockablePane 对象。 该示例演示了如何为可停靠的窗格启用自动隐藏所有功能的功能、如何启用标题栏或控制手柄、如何启用自动隐藏模式、如何显示窗格,以及如何对处于自动隐藏模式的窗格进行动画处理。 此代码片段是 Visual Studio 演示示例的一部分。

// GetOwner is an inherited method.
CDockablePane *pParentBar = DYNAMIC_DOWNCAST(CDockablePane, GetOwner());
pParentBar->EnableAutohideAll();
pParentBar->EnableGripper(true);
pParentBar->SetAutoHideMode(true, CBRS_ALIGN_LEFT);
pParentBar->ShowPane(true, false, true);
pParentBar->Slide(true);

继承层次结构

CObject

CCmdTarget

CWnd

CBasePane

CPane

CDockablePane

要求

标头afxDockablePane.h

CDockablePane::AttachToTabWnd

将当前窗格附加到目标窗格,创建选项卡式窗格。

virtual CDockablePane* AttachToTabWnd(
    CDockablePane* pTabControlBarAttachTo,
    AFX_DOCK_METHOD dockMethod,
    BOOL bSetActive= TRUE,
    CDockablePane** ppTabbedControlBar = NULL);

参数

pTabControlBarAttachTo
[in, out] 指定当前窗格附加到的目标窗格。 目标窗格必须是可停靠的窗格。

dockMethod
[in] 指定停靠方法。

bSetActive
[in] 若要在附加操作后激活选项卡式窗格,则为 TRUE;否则为 FALSE

ppTabbedControlBar
[out] 包含附加操作产生的选项卡式窗格。

返回值

如果当前窗格不是选项卡式窗格,则为指向当前窗格的指针;否则为指向附加操作产生的选项卡式窗格的指针。 如果无法附加当前窗格,或者发生错误,则返回值为 NULL

注解

当一个可停靠的窗格使用此方法附加到另一个窗格时,会发生以下情况:

  1. 框架检查目标窗格 pTabControlBarAttachTo 是常规停靠窗格,还是从 CBaseTabbedPane 派生的。

  2. 如果目标窗格是选项卡式窗格,框架会将当前窗格作为选项卡添加到该窗格。

  3. 如果目标窗格是常规停靠窗格,框架会创建选项卡式窗格。

    • 框架调用 pTabControlBarAttachTo->CreateTabbedPane。 新选项卡式窗格的样式取决于 m_pTabbedControlBarRTC 成员。 默认情况下,此成员设置为运行时类 CTabbedPane。 如果将 AFX_CBRS_OUTLOOK_TABS 样式作为 dwTabbedStyle 参数传递给 CDockablePane::Create 方法,则会将运行时类对象设置为运行时类 CMFCOutlookBar。 可以随时更改此成员以更改新窗格的样式。

    • 当此方法创建选项卡式窗格时,框架会将指向 pTabControlBarAttachTo 的指针替换(如果窗格停靠或浮在多微型框窗口中)为指向新选项卡式窗格的指针。

    • 框架会将 pTabControlBarAttachTo 窗格作为第一个选项卡添加到选项卡式窗格。然后,框架会将当前窗格作为第二个选项卡添加。

  4. 如果当前窗格派生自 CBaseTabbedPane,则会将其所有选项卡移到 pTabControlBarAttachTo 并销毁当前窗格。 因此,调用此方法时要小心,因为当方法返回时,指向当前窗格的指针可能无效。

如果在构建停靠布局时将一个窗格附加到另一个窗格,则请将 dockMethod 设置为 DM_SHOW

应该先停靠第一个窗格,然后再将另一个窗格附加到该窗格。

CDockablePane::CalcFixedLayout

返回窗格矩形的大小。

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

参数

bStretch
[in] 未使用。

bHorz
[in] 未使用。

返回值

一个 CSize 对象,其中包含窗格矩形的大小。

CDockablePane::CanAcceptMiniFrame

确定是否可以将指定的微型框停靠到窗格。

virtual BOOL CanAcceptMiniFrame(CPaneFrameWnd* pMiniFrame) const;

参数

pMiniFrame
[in] 指向 CPaneFrameWnd 对象的指针。

返回值

如果可以将 pMiniFrame 停靠到窗格,则为 TRUE;否则为 FALSE

CDockablePane::CanAcceptPane

确定是否可以将另一个窗格停靠到当前窗格。

virtual BOOL CanAcceptPane(const CBasePane* pBar) const;

参数

pBar
[in] 指定要停靠到当前窗格的窗格。

返回值

如果可以将指定窗格停靠到此窗格,则为 TRUE;否则为 FALSE

备注

在将窗格停靠到当前窗格之前,框架会调用此方法。

重写派生类中的此函数,以启用或禁用停靠到特定窗格的操作。

默认情况下,如果 pBar 或其父级为类型 CDockablePane,此方法会返回 TRUE

CDockablePane::CanAutoHide

确定窗格是否可以自动隐藏。

virtual BOOL CanAutoHide() const;

返回值

如果窗格可以自动隐藏,则为 TRUE;否则为 FALSE

注解

如果遇到以下任何情况,CDockablePane::CanAutoHide 会返回 FALSE

  • 窗格没有父级。

  • 停靠管理器不允许窗格自动隐藏。

  • 窗格未停靠。

CDockablePane::CanBeAttached

确定是否可将当前窗格停靠到另一个窗格。

virtual BOOL CanBeAttached() const;

返回值

如果可停靠的窗格可以停靠到另一个窗格或主框架窗口,则为 TRUE;否则为 FALSE

备注

默认情况下,此方法始终返回 TRUE。 在派生类中重写此方法,以便在不调用 CBasePane::EnableDocking 的情况下启用或禁用停靠。

CDockablePane::CDockablePane

构造并初始化一个 CDockablePane 对象。

CDockablePane();

备注

构造可停靠窗格对象后,请调用 CDockablePane::CreateCDockablePane::CreateEx 来创建它。

CDockablePane::ConvertToTabbedDocument

将一个或多个可停靠的窗格转换为 MDI 选项卡式文档。

virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);

参数

bActiveTabOnly
[in] 转换 CTabbedPane 时,指定 TRUE 可仅转换活动选项卡。指定 FALSE 可转换窗格中的所有选项卡。

CDockablePane::CheckAutoHideCondition

确定停靠窗格是否已隐藏(也称自动隐藏模式)。

virtual BOOL CheckAutoHideCondition();

返回值

如果满足隐藏条件,则为 TRUE;否则为 FALSE

注解

框架使用计时器来定期检查是否隐藏某个处于自动隐藏模式的可停靠的窗格。 此方法返回 TRUE 的前提是,窗格未处于活动状态,窗格未重设大小,并且鼠标指针未悬停在窗格上。

如果满足上述所有条件,框架会调用 CDockablePane::Slide 来隐藏窗格。

CDockablePane::CheckStopSlideCondition

确定自动隐藏停靠窗格应何时停止滑动。

virtual BOOL CheckStopSlideCondition(BOOL bDirection);

参数

bDirection
[in] 如果窗格可见,则为 TRUE;如果窗格已隐藏,则为 FALSE

返回值

如果满足停止条件,则为 TRUE;否则为 FALSE

注解

当可停靠的窗格设置为自动隐藏模式时,框架使用滑动效果来显示或隐藏窗格。 当窗格滑动时,框架将调用此函数。 当窗格完全可见或完全隐藏时,CheckStopSlideCondition 返回 TRUE

在派生类中重写此方法可实现自定义自动隐藏效果。

CDockablePane::CopyState

复制可停靠的窗格的状态。

virtual void CopyState(CDockablePane* pOrgBar);

参数

pOrgBar
[in] 指向可停靠的窗格的指针。

注解

通过调用以下方法,CDockablePane::CopyStatepOrgBar 的状态复制到当前窗格:

CDockablePane::Create

创建 Windows 控件并将其附加到 CDockablePane 对象。

virtual BOOL Create(
    LPCTSTR lpszCaption,
    CWnd* pParentWnd,
    const RECT& rect,
    BOOL bHasGripper,
    UINT nID,
    DWORD dwStyle,
    DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
    DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE,
    CCreateContext* pContext = NULL);

virtual BOOL Create(
    LPCTSTR lpszWindowName,
    CWnd* pParentWnd,
    CSize sizeDefault,
    BOOL bHasGripper,
    UINT nID,
    DWORD dwStyle = WS_CHILD|WS_VISIBLE|CBRS_TOP|CBRS_HIDE_INPLACE,
    DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
    DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE);

参数

lpszCaption
[in] 指定窗口名称。

pParentWnd
[in, out] 指定父窗口。

rect
[in] 指定窗口的大小和位置,以 pParentWnd 的客户端坐标表示。

bHasGripper
[in] 若要创建带标题栏的窗格,则为 TRUE;否则为 FALSE

nID
[in] 指定子窗口的 ID。 如果要保存此停靠窗格的停靠状态,此值必须独一无二。

dwStyle
[in] 指定窗口样式特性。

dwTabbedStyle
[in] 指定当用户在此窗格的标题栏上拖动窗格时创建的选项卡式窗口的选项卡式样式。

dwControlBarStyle
[in] 指定其他样式特性。

pContext
[in, out] 指定窗口的创建上下文。

lpszWindowName
[in] 指定窗口名称。

sizeDefault
[in] 指定窗口的大小。

返回值

如果已成功创建可停靠的窗格,则为 TRUE;否则为 FALSE

备注

请创建 Windows 窗格并将其附加到 CDockablePane 对象。

如果 dwStyle 窗口样式具有 CBRS_FLOAT_MULTI 标志,则微型框窗口可以与其中的其他窗格一起浮动。 默认情况下,停靠窗格只能单独浮动。

如果 dwTabbedStyle 参数指定了 AFX_CBRS_OUTLOOK_TABS 标志,则当使用 CDockablePane::AttachToTabWnd 方法将另一个窗格附加到此窗格时,此窗格将创建 Outlook 样式的选项卡式窗格。 默认情况下,可停靠的窗格会创建类型为 CTabbedPane 的常规选项卡式窗格。

CDockablePane::CreateDefaultPaneDivider

为窗格创建默认分隔符,因为它将停靠到框架窗口。

static CPaneDivider* __stdcall CreateDefaultPaneDivider(
    DWORD dwAlignment,
    CWnd* pParent,
    CRuntimeClass* pSliderRTC = NULL);

参数

dwAlignment
[in] 指定要将窗格停靠到其中的主框架侧。 如果 dwAlignment 包含 CBRS_ALIGN_LEFTCBRS_ALIGN_RIGHT 标志,此方法将创建垂直 (CPaneDivider::SS_VERT) 分隔符;否则,此方法将创建水平 (CPaneDivider::SS_HORZ) 分隔符。

pParent
[in] 指向父框架的指针。

pSliderRTC
[in] 未使用。

返回值

此方法返回指向新创建的分隔符的指针,或者返回 NULL(如果分隔符创建失败)。

备注

dwAlignment 可以是下列任意值:

说明
CBRS_ALIGN_TOP 窗格将停靠在框架窗口的工作区顶部。
CBRS_ALIGN_BOTTOM 窗格将停靠在框架窗口的工作区底部。
CBRS_ALIGN_LEFT 窗格将停靠在框架窗口的工作区左侧。
CBRS_ALIGN_RIGHT 窗格将停靠在框架窗口的工作区右侧。

CDockablePane::CreateEx

创建 Windows 控件并将其附加到 CDockablePane 对象。

virtual BOOL CreateEx(
    DWORD dwStyleEx,
    LPCTSTR lpszCaption,
    CWnd* pParentWnd,
    const RECT& rect,
    BOOL bHasGripper,
    UINT nID,
    DWORD dwStyle,
    DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
    DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE,
    CCreateContext* pContext = NULL);

参数

dwStyleEx
[in] 指定新窗口的扩展样式特性。

lpszCaption
[in] 指定窗口名称。

pParentWnd
[in, out] 指定父窗口。

rect
[in] 指定窗口的大小和位置,以 pParentWnd 的客户端坐标表示。

bHasGripper
[in] 若要创建带标题栏的窗格,则为 TRUE;否则为 FALSE

nID
[in] 指定子窗口的 ID。 如果要保存此停靠窗格的停靠状态,此值必须独一无二。

dwStyle
[in] 指定窗口样式特性。

dwTabbedStyle
[in] 指定当用户在此窗格的标题栏上拖动窗格时创建的选项卡式窗口的选项卡式样式。

dwControlBarStyle
[in] 指定其他样式特性。

pContext
[in, out] 指定窗口的创建上下文。

返回值

如果已成功创建可停靠的窗格,则为 TRUE;否则为 FALSE

备注

请创建 Windows 窗格并将其附加到 CDockablePane 对象。

如果 dwStyle 窗口样式具有 CBRS_FLOAT_MULTI 标志,则微型框窗口可以与其中的其他窗格一起浮动。 默认情况下,停靠窗格只能单独浮动。

如果 dwTabbedStyle 参数指定了 AFX_CBRS_OUTLOOK_TABS 标志,则当使用 CDockablePane::AttachToTabWnd 方法将另一个窗格附加到此窗格时,此窗格将创建 Outlook 样式的选项卡式窗格。 默认情况下,可停靠的窗格会创建类型为 CTabbedPane 的常规选项卡式窗格。

CDockablePane::CreateTabbedPane

从当前窗格创建选项卡式窗格。

virtual CTabbedPane* CreateTabbedPane();

返回值

新的选项卡式窗格,或者 NULL(如果创建操作失败)。

备注

框架会在创建选项卡式窗格来替换此窗格时调用此方法。 有关详细信息,请参阅 CDockablePane::AttachToTabWnd

重写派生类中的此方法可自定义创建和初始化选项卡式窗格的方式。

选项卡式窗格是根据 m_pTabbedControlBarRTC 成员中存储的运行时类信息创建的,该信息由 CDockablePane::CreateEx 方法初始化。

CDockablePane::DockPaneContainer

将容器停靠到窗格。

virtual BOOL DockPaneContainer(
    CPaneContainerManager& barContainerManager,
    DWORD dwAlignment,
    AFX_DOCK_METHOD dockMethod);

参数

barContainerManager
[in] 对停靠的容器的容器管理器的引用。

dwAlignment
[in] DWORD,指定容器将停靠到其中的窗格侧。

dockMethod
[in] 未使用。

返回值

如果容器已成功停靠到窗格,则为 TRUE;否则为 FALSE

备注

dwAlignment 可以是下列任意值:

说明
CBRS_ALIGN_TOP 容器将停靠在窗格顶部。
CBRS_ALIGN_BOTTOM 容器将停靠在窗格底部。
CBRS_ALIGN_LEFT 容器将停靠在窗格左侧。
CBRS_ALIGN_RIGHT 容器将停靠在窗格右侧。

CDockablePane::DockPaneStandard

使用轮廓(标准)停靠来停靠窗格。

virtual CPane* DockPaneStandard(BOOL& bWasDocked);

参数

bWasDocked
[in] 如果窗格已成功停靠,当此方法返回时,此值会包含 TRUE;否则会包含 FALSE

返回值

如果窗格已停靠到选项卡式窗口,或者由于停靠而创建了选项卡式窗口,则此方法会返回一个指向选项卡式窗口的指针。 如果窗格已经以其他方式成功停靠,则此方法会返回 this 指针。 如果停靠失败,此方法会返回 NULL

CDockablePane::DockToRecentPos

将窗格停靠到存储的停靠位置。

BOOL CDockablePane::DockToRecentPos();

返回值

如果窗格已成功停靠,则为 TRUE;否则为 FALSE

备注

可停靠的窗格将最新停靠信息存储在 CRecentDockSiteInfo 对象中。

CDockablePane::DockToWindow

将一个停靠窗格停靠到另一个停靠窗格。

virtual BOOL DockToWindow(
    CDockablePane* pTargetWindow,
    DWORD dwAlignment,
    LPCRECT lpRect = NULL);

参数

pTargetWindow
[in, out] 指定要将此窗格停靠到其中的可停靠的窗格。

dwAlignment
[in] 指定窗格的停靠对齐方式。 可能是 CBRS_ALIGN_LEFTCBRS_ALIGN_TOPCBRS_ALIGN_RIGHTCBRS_ALIGN_BOTTOMCBRS_ALIGN_ANY 中的一个。 (在 afxres.h 中定义。)

lpRect
[in] 指定窗格的停靠矩形。

返回值

如果窗格已成功停靠,则为 TRUE;否则为 FALSE

备注

调用此方法,将一个窗格停靠到另一个窗格,其对齐方式由 dwAlignment 指定。

CDockablePane::DrawCaption

绘制停靠窗格的标题栏(也称控制手柄)。

virtual void DrawCaption(
    CDC* pDC,
    CRect rectCaption);

参数

pDC
[in] 表示用于绘制的设备上下文。

rectCaption
[in] 指定窗格的标题栏的边框。

备注

框架调用此方法以绘制可停靠的窗格的标题栏。

在派生类中重写此方法以自定义标题栏的外观。

CDockablePane::EnableAutohideAll

启用或禁用此窗格以及容器中的其他窗格的自动隐藏模式。

void EnableAutohideAll(BOOL bEnable = TRUE);

参数

bEnable
[in] 若要为可停靠的窗格启用自动隐藏所有功能的功能,则为 TRUE;否则为 FALSE

备注

当用户按住 Ctrl 键并单击固定按钮以将窗格切换到自动隐藏模式时,同一容器中的所有其他窗格也将切换到自动隐藏模式。

调用此方法时,若将 bEnable 设置为 FALSE,则可禁用特定窗格的此功能。

CDockablePane::EnableGripper

显示或隐藏标题栏(也称控制手柄)。

virtual void EnableGripper(BOOL bEnable);

参数

bEnable
[in] 若要启用标题栏,则为 TRUE;否则为 FALSE

备注

当框架创建可停靠的窗格时,这些窗格没有 WS_STYLE 窗口样式(即使已指定)。 这意味着窗格的标题栏是由框架控制的非工作区,但该区不同于标准窗口标题栏。

可以随时显示或隐藏标题栏。 将窗格作为选项卡添加到选项卡式窗口时,或在微型框窗口中浮动窗格时,框架会隐藏标题栏。

CDockablePane::GetAHRestoredRect

指定自动隐藏模式下的窗格的位置。

CRect GetAHRestoredRect() const;

返回值

一个 CRect 对象,其中包含窗格处于自动隐藏模式时的位置。

注解

CDockablePane::GetAHSlideMode

检索窗格的自动隐藏幻灯片模式。

virtual UINT GetAHSlideMode() const;

返回值

UINT,指定窗格的自动隐藏幻灯片模式。 返回值可能是 AFX_AHSM_MOVEAFX_AHSM_STRETCH,但实现仅使用 AFX_AHSM_MOVE

备注

CDockablePane::GetCaptionHeight

返回当前标题栏的高度(以像素为单位)。

virtual int GetCaptionHeight() const;

返回值

标题栏的高度(以像素为单位)。

备注

如果标题栏已通过 CDockablePane::EnableGripper 方法隐藏,或者窗格没有标题栏,则标题栏高度为 0。

CDockablePane::GetDefaultPaneDivider

返回窗格的容器的默认窗格分隔符。

CPaneDivider* GetDefaultPaneDivider() const;

返回值

如果可停靠的窗格停靠到主框架窗口,则为有效的 CPaneDivider 对象;如果可停靠的窗格未停靠或处于浮动状态,则为 NULL

注解

有关窗格分隔符的详细信息,请参阅 CPaneDivider

CDockablePane::GetDockingStatus

确定基于提供的指针位置停靠窗格的功能。

virtual AFX_CS_STATUS GetDockingStatus(
    CPoint pt,
    int nSensitivity);

参数

pt
[in] 指针在屏幕坐标中的位置。

nSensitivity
[in] 启用停靠时指针必须距离矩形边缘的距离(以像素为单位)。

返回值

以下状态值之一:

AFX_CS_STATUS 含义
CS_NOTHING 指针不在停靠站点上。 框架不会停靠窗格。
CS_DOCK_IMMEDIATELY 在即时模式下,指针位于停靠站点上(窗格使用 DT_IMMEDIATE 停靠模式)。 框架会立即停靠窗格。
CS_DELAY_DOCK 指针位于一个是另一个停靠窗格或主框架边缘的停靠站点上。 框架会在经历一段延迟后停靠窗格。 请参阅“注解”部分,详细了解该延迟。
CS_DELAY_DOCK_TO_TAB 指针位于使窗格停靠在选项卡式窗口中的停靠站点上。 当指针位于另一个停靠窗格的标题栏上或选项卡窗格的选项卡区域上时,会发生此情况。

注解

框架调用此方法来处理浮动窗格的停靠。

对于使用 DT_IMMEDIATE 停靠模式的浮动工具栏或停靠窗格,框架会延迟停靠命令,使用户能够在停靠发生前将窗口移出父框架的工作区。 延迟的长度以毫秒为单位进行度量,由 CDockingManager::m_nTimeOutBeforeToolBarDock 数据成员控制。 CDockingManager::m_nTimeOutBeforeToolBarDock 的默认值为 200。 此行为模拟 Microsoft Word 2007 的停靠行为。

对于延迟的停靠状态(CS_DELAY_DOCKCS_DELAY_DOCK_TO_TAB),框架在用户松开鼠标按钮之前不会执行停靠。 如果窗格使用 DT_STANDARD 停靠模式,框架会在投影的停靠位置显示一个矩形。 如果窗格使用 DT_SMART 停靠模式,框架会在投影的停靠位置显示智能停靠标记和半透明矩形。 若要为窗格指定停靠模式,请调用 CBasePane::SetDockingMode 方法。 有关智能停靠的详细信息,请参阅 CDockingManager::GetSmartDockingParams

CDockablePane::GetDragSensitivity

返回停靠窗格的拖动敏感度。

static const CSize& GetDragSensitivity();

返回值

一个 CSize 对象,其中包含以拖动点为中心的矩形的宽度和高度(以像素为单位)。 在鼠标指针在此矩形外部移动之前,拖动操作不会开始。

CDockablePane::GetLastPercentInPaneContainer

检索窗格在其容器中占用的空间百分比(CPaneContainer)。

int GetLastPercentInPaneContainer() const;

返回值

一个 int,指定窗格在其容器中占用的空间百分比。

备注

当容器调整其布局时,将使用此方法。

CDockablePane::GetTabArea

检索窗格的选项卡区域。

virtual void GetTabArea(
    CRect& rectTabAreaTop,
    CRect& rectTabAreaBottom) const;

参数

rectTabAreaTop
[in] 如果选项卡位于窗格顶部,GetTabArea 会用选项卡区域填充此变量。 如果选项卡位于窗格底部,则会使用空矩形填充此变量。

rectTabAreaBottom
[in] 如果选项卡位于窗格底部,GetTabArea 会用选项卡区域填充此变量。 如果选项卡位于窗格顶部,则会使用空矩形填充此变量。

备注

此方法仅在派生自 CDockablePane 且具有选项卡的类中使用。 有关详细信息,请参阅 CTabbedPane::GetTabAreaCMFCOutlookBar::GetTabArea

CDockablePane::GetTabbedPaneRTC

返回当另一个窗格停靠到当前窗格时创建的选项卡式窗口的运行时类信息。

CRuntimeClass* GetTabbedPaneRTC() const;

返回值

可停靠的窗格的运行时类信息。

注解

调用此方法可检索动态创建的选项卡式窗格的运行时类信息。 当用户将一个窗格拖到另一个窗格的标题栏时,或者你调用 CDockablePane::AttachToTabWnd 方法以编程方式从两个可停靠的窗格创建选项卡式窗格时,可能会出现这种情况。

可以通过调用 CDockablePane::SetTabbedPaneRTC 方法来设置运行时类信息。

CDockablePane::HasAutoHideMode

指定是否可以将停靠窗格切换到自动隐藏模式。

virtual BOOL HasAutoHideMode() const;

返回值

如果可停靠的窗格可以切换到自动隐藏模式,则为 TRUE;否则为 FALSE

注解

在派生类中重写此方法,以禁用特定的可停靠的窗格的自动隐藏模式。

CDockablePane::HitTest

指定用户在窗格中单击鼠标时的位置。

virtual int HitTest(
    CPoint point,
    BOOL bDetectCaption = FALSE);

参数

point
[in] 指定要测试的点。

bDetectCaption
[in] 如果当点位于窗格的标题栏上时应返回 HTCAPTION,则为 TRUE;否则为 FALSE

返回值

以下值之一:

  • HTNOWHERE:如果 point 不在可停靠的窗格中。

  • HTCLIENT:如果 point 在可停靠的窗格的工作区中。

  • HTCAPTION:如果 point 在可停靠的窗格的标题区中。

  • AFX_HTCLOSE:如果 point 在关闭按钮上。

  • HTMAXBUTTON:如果 point 在固定按钮上。

CDockablePane::IsAutohideAllEnabled

指示是否可以将停靠窗格和容器中的所有其他窗格切换到自动隐藏模式。

virtual BOOL IsAutohideAllEnabled() const;

返回值

如果可以将可停靠的窗格和容器中的所有其他窗格切换到自动隐藏模式,则为 TRUE;否则为 FALSE

注解

用户通过在按住 Ctrl 键的同时单击停靠固定按钮来启用自动隐藏模式

若要启用或禁用此行为,请调用 CDockablePane::EnableAutohideAll 方法。

CDockablePane::IsAutoHideMode

确定窗格是否处于自动隐藏模式。

virtual BOOL IsAutoHideMode() const;

返回值

如果可停靠的窗格处于自动隐藏模式,则为 TRUE;否则为 FALSE

CDockablePane::IsDocked

确定当前窗格是否已停靠。

virtual BOOL IsDocked() const;

返回值

如果可停靠的窗格不属于微型框窗口,或者它浮动在具有另一个窗格的微型框窗口中,则为 TRUE。 如果窗格是微型框窗口的子级,并且没有属于此微型框窗口的其他窗格,则为 FALSE

备注

若要确定窗格是否停靠到主框架窗口,请调用 CDockablePane::GetDefaultPaneDivider。 如果方法返回非 NULL 指针,则窗格停靠在主框架窗口中。

CDockablePane::IsHideInAutoHideMode

在通过调用 CDockablePane::ShowPane 来显示(或隐藏)窗格的情况下,确定处于自动隐藏模式的窗格的行为。

virtual BOOL IsHideInAutoHideMode() const;

返回值

如果在自动隐藏模式下应隐藏可停靠的窗格,则为 TRUE;否则为 FALSE

备注

当可停靠的窗格处于自动隐藏模式时,它在你调用 ShowPane 来隐藏或显示窗格时的行为方式会有所不同。 此行为由静态成员 CDockablePane::m_bHideInAutoHideMode 控制。 如果此成员是 TRUE,则可停靠的窗格及其相关的自动隐藏工具栏或自动隐藏按钮会在你调用 ShowPane 时被隐藏或显示。 否则,可停靠的窗格会被激活或停用,其相关的自动隐藏工具栏或自动隐藏按钮将始终可见。

在派生类中重写此方法以更改各个窗格的默认行为。

m_bHideInAutoHideMode 的默认值为 FALSE

CDockablePane::IsInFloatingMultiPaneFrameWnd

指定窗格是否位于多窗格框架窗口中 (CMultiPaneFrameWnd Class)。

virtual BOOL IsInFloatingMultiPaneFrameWnd() const;

返回值

如果窗格位于多窗格框架窗口中,则为 TRUE;否则为 FALSE

注解

CDockablePane::IsResizable

指定窗格是否可重设大小。

virtual BOOL IsResizable() const;

返回值

如果窗格可重设大小,则为 TRUE;否则为 FALSE

备注

默认情况下,可停靠的窗格可重设大小。 若要防止重设大小,请重写派生类中的此方法并返回 FALSE。 请注意,在 CPane::DockPane 中,值为 FALSE 会导致 ASSERT 失败。 改用 CDockingManager::AddPane 可将窗格停靠在父框架中。

无法重设大小的窗格既不能浮动,也不能进入自动隐藏模式,并且始终位于父框架的外缘。

CDockablePane::IsTabLocationBottom

指定选项卡位于窗格的顶部还是底部。

virtual BOOL IsTabLocationBottom() const;

返回值

如果选项卡位于窗格底部,则为 TRUE;如果选项卡位于窗格顶部,则为 FALSE

备注

有关详细信息,请参阅 CTabbedPane::IsTabLocationBottom

CDockablePane::IsTracked

指定用户是否在移动窗格。

BOOL IsTracked() const;

返回值

如果在移动窗格,则为 TRUE;否则为 FALSE

CDockablePane::IsVisible

确定当前窗格是否可见。

virtual BOOL IsVisible() const;

返回值

如果可停靠的窗格可见,则为 TRUE;否则为 FALSE

备注

调用此方法可确定可停靠的窗格是否可见。 可以使用此方法,而不是调用 CWnd::IsWindowVisible 或针对 WS_VISIBLE 样式进行测试。 返回的可见性状态取决于自动隐藏模式是已禁用还是已启用,以及取决于 CDockablePane::IsHideInAutoHideMode 属性的值。

如果可停靠的窗格处于自动隐藏模式,并且 IsHideInAutoHideMode 返回 FALSE,则可见性状态始终为 FALSE

如果可停靠的窗格处于自动隐藏模式,并且 IsHideInAutoHideMode 返回 TRUE,则可见性状态取决于相关的自动隐藏工具栏的可见性状态。

如果可停靠的窗格不在自动隐藏模式下,则可见性状态由 CBasePane::IsVisible 方法确定。

## CDockablePane::LoadState

仅供内部使用。 有关更多详细信息,请参阅 Visual Studio 安装的 mfc 文件夹中的源代码。 例如 %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc

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

CDockablePane::m_bDisableAnimation

指定是否禁用可停靠的窗格的自动隐藏动画。

AFX_IMPORT_DATA static BOOL m_bDisableAnimation;

CDockablePane::m_bHideInAutoHideMode

确定窗格在处于自动隐藏模式时的行为。

AFX_IMPORT_DATA static BOOL m_bHideInAutoHideMode;

备注

此值影响应用程序中的所有停靠窗格。

如果将此成员设置为 TRUE,则当你调用 CDockablePane::ShowPane 时,可停靠的窗格处于隐藏状态,或与其相关的自动隐藏工具栏和按钮一起显示。

如果将此成员设置为 FALSE,则当你调用 CDockablePane::ShowPane 时,会激活或停用可停靠的窗格。

CDockablePane::m_nSlideSteps

指定窗格在处于自动隐藏模式时的动画速度。

AFX_IMPORT_DATA static int m_nSlideSteps;

注解

如需较快的动画效果,请减小此值。 如需较慢的动画效果,请增加此值。

CDockablePane::OnAfterChangeParent

有关更多详细信息,请参阅 Visual Studio 安装的 mfc 文件夹中的源代码。 例如 %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc

virtual void OnAfterChangeParent(CWnd* pWndOldParent);

参数

[in] pWndOldParent\

备注

CDockablePane::OnAfterDockFromMiniFrame

当浮动停靠栏停靠在框架窗口中时由框架调用。

virtual void OnAfterDockFromMiniFrame();

注解

默认情况下,此方法不执行任何操作。

CDockablePane::OnBeforeChangeParent

框架在更改窗格的父级之前调用此方法。

virtual void OnBeforeChangeParent(
    CWnd* pWndNewParent,
    BOOL bDelay = FALSE);

参数

pWndNewParent
[in] 指向新的父窗口的指针。

bDelay
[in] BOOL,指定是否在取消停靠窗格时推迟停靠布局的重新计算。 有关详细信息,请参阅 CDockablePane::UndockPane

备注

如果窗格已停靠,但新父级不允许停靠,则此方法会取消停靠窗格。

如果窗格在转换为选项卡式文档,此方法将存储其最新停靠位置。 框架使用最新停靠位置在窗格转换回已停靠状态时还原窗格的位置。

CDockablePane::OnBeforeFloat

框架在窗格转换为浮动状态之前调用此方法。

virtual BOOL OnBeforeFloat(
    CRect& rectFloat,
    AFX_DOCK_METHOD dockMethod);

参数

rectFloat
[in] 指定窗格在处于浮动状态时的位置和大小。

dockMethod
[in] 指定停靠方法。 有关可能值的列表,请参阅 CPane::DockPane

返回值

如果可以浮动窗格,则为 TRUE;否则为 FALSE

备注

此方法在窗格即将浮动时由框架调用。 如果要在窗格浮动之前进行任何处理,则可在派生类中重写此方法。

CDockablePane::OnPressButtons

在用户按下除 AFX_HTCLOSEAFX_HTMAXBUTTON 按钮之外的标题按钮时调用。

virtual void OnPressButtons(UINT nHit);

参数

nHit
[in] 不使用此参数。

备注

如果将自定义按钮添加到可停靠的窗格的标题栏,请重写此方法以在用户按下按钮时接收通知。

CDockablePane::OnSlide

由框架调用,可在窗格处于自动隐藏模式时对窗格进行动画处理。

virtual void OnSlide(BOOL bSlideOut);

参数

bSlideOut
[in] TRUE 可显示窗格;FALSE 可隐藏窗格。

注解

在派生类中重写此方法可实现自定义自动隐藏效果。

CDockablePane::RemoveFromDefaultPaneDividier

框架会在窗格取消停靠时调用此方法。

void RemoveFromDefaultPaneDividier();

备注

此方法将默认窗格分隔符设置为 NULL,并将窗格从其容器中删除。

CDockablePane::ReplacePane

将窗格替换为指定的窗格。

BOOL ReplacePane(
    CDockablePane* pBarToReplaceWith,
    AFX_DOCK_METHOD dockMethod,
    BOOL bRegisterWithFrame = FALSE);

参数

pBarToReplaceWith
[in] 指向可停靠的窗格的指针。

dockMethod
[in] 未使用。

bRegisterWithFrame
[in] 如果为 TRUE,则会将新窗格注册到旧窗格的父级的停靠管理器。 在由停靠管理器维护的窗格列表中,新窗格将插入到旧窗格的索引中。

返回值

如果替换成功,则为 TRUE;否则为 FALSE

CDockablePane::RestoreDefaultPaneDivider

反序列化窗格时,框架会调用此方法,以还原默认窗格分隔符。

void RestoreDefaultPaneDivider();

注解

还原的默认窗格分隔符会替换当前的默认窗格分隔符(如果存在)。

CDockablePane::SetAutoHideMode

在可见模式和自动隐藏模式之间切换停靠窗格。

virtual CMFCAutoHideBar* SetAutoHideMode(
    BOOL bMode,
    DWORD dwAlignment,
    CMFCAutoHideBar* pCurrAutoHideBar = NULL,
    BOOL bUseTimer = TRUE);

参数

bMode
[in] TRUE 可启用自动隐藏模式;FALSE 可启用常规停靠模式。

dwAlignment
[in] 指定要创建的自动隐藏窗格的对齐方式。

pCurrAutoHideBar
[in, out] 指向当前的自动隐藏工具栏的指针。 可以为 NULL

bUseTimer
[in] 指定当用户将窗格切换到自动隐藏模式时是使用自动隐藏效果,还是立即隐藏窗格。

返回值

因切换为自动隐藏模式或 NULL 而创建的自动隐藏工具栏。

注解

当用户单击固定按钮以将可停靠的窗格切换到自动隐藏模式或常规停靠模式时,框架将调用此方法。

调用此方法可将可停靠的窗格以编程方式切换为自动隐藏模式。 窗格必须停靠到主框架窗口(CDockablePane::GetDefaultPaneDivider 必须返回指向 CPaneDivider 的有效指针)。

CDockablePane::SetAutoHideParents

设置窗格的自动隐藏按钮和自动隐藏工具栏。

void SetAutoHideParents(
    CMFCAutoHideBar* pToolBar,
    CMFCAutoHideButton* pBtn);

参数

pToolBar
[in] 指向自动隐藏工具栏的指针。

pBtn
[in] 指向自动隐藏按钮的指针。

CDockablePane::SetLastPercentInPaneContainer

设置窗格在其容器中占用的空间百分比。

void SetLastPercentInPaneContainer(int n);

参数

n
[in] 一个 int,指定窗格在其容器中占用的空间百分比。

备注

框架会调整窗格以在重新计算布局时使用新值。

CDockablePane::SetRestoredDefaultPaneDivider

设置还原的默认窗格分隔符。

void SetRestoredDefaultPaneDivider(HWND hRestoredSlider);

参数

hRestoredSlider
[in] 窗格分隔符的句柄(滑块)。

备注

反序列化窗格时,将获取还原的默认窗格分隔符。 有关详细信息,请参阅 CDockablePane::RestoreDefaultPaneDivider

CDockablePane::SetTabbedPaneRTC

设置当两个窗格停靠在一起时创建的选项卡式窗口的运行时类信息。

void SetTabbedPaneRTC(CRuntimeClass* pRTC);

参数

pRTC
[in] 选项卡式窗格的运行时类信息。

注解

调用此方法可设置动态创建的选项卡式窗格的运行时类信息。 当用户将一个窗格拖到另一个窗格的标题栏时,或者你调用 CDockablePane::AttachToTabWnd 方法以编程方式从两个可停靠的窗格创建选项卡式窗格时,可能会出现这种情况。

根据 CDockablePane::CreateCDockablePane::CreateExdwTabbedStyle 参数设置默认运行时类。 若要自定义新的选项卡式窗格,请从以下类之一派生类:

然后,使用指向运行时类信息的指针调用此方法。

CDockablePane::ShowPane

显示或隐藏窗格。

virtual void ShowPane(
    BOOL bShow,
    BOOL bDelay,
    BOOL bActivate);

参数

bShow
[in] TRUE 可显示窗格;FALSE 可隐藏窗格。

bDelay
[in] TRUE 可延迟停靠布局的调整;FALSE 可立即调整停靠布局。

bActivate
[in] TRUE 可在窗格显示时激活窗格;其他情况为 FALSE

注解

在显示或隐藏可停靠的窗格时调用此方法,而不调用 CWnd::ShowWindow

CDockablePane::Slide

将处于自动隐藏模式的窗格动画化。

virtual void Slide(
    BOOL bSlideOut,
    BOOL bUseTimer = TRUE);

参数

bSlideOut
[in] TRUE 可显示窗格;FALSE 可隐藏窗格。

bUseTimer
[in] TRUE 可显示或隐藏具有自动隐藏效果的窗格;FALSE 可立即显示或隐藏窗格。

备注

框架调用此方法可将处于自动隐藏模式的窗格动画化。

此方法使用 CDockablePane::m_nSlideDefaultTimeOut 值来确定幻灯片效果的超时。 超时的默认值为 1。 如果自定义自动隐藏算法,请修改此成员以更改超时。

CDockablePane::ToggleAutoHide

在始终可见模式和自动隐藏模式之间切换窗格。

virtual void ToggleAutoHide();

注解

此方法通过调用 CDockablePane::SetAutoHideMode 切换窗格的自动隐藏模式。

CDockablePane::UndockPane

从主框架窗口或微型框窗口容器中取消停靠窗格。

virtual void UndockPane(BOOL bDelay = FALSE);

参数

bDelay
[in] TRUE 可延迟停靠布局的计算;FALSE 可立即重新计算停靠布局。

注解

调用此方法可从主框架窗口或多微型框窗口容器中取消停靠窗格(一个在单个微型框窗口(包含其他窗格)中浮动的窗格)。

必须先取消停靠窗格,然后才能执行未由 CDockingManager 执行的任何外部操作。 例如,必须先取消停靠窗格,然后才能以编程方式将窗格从一个位置移到另一个位置。

框架在窗格被销毁之前自动取消停靠窗格。

另请参阅

层次结构图

CPane