CDockingPanesRow 类

管理位于停靠站点中同一水平或垂直行(列)的窗格的列表。

有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。

语法

class CDockingPanesRow : public CObject

成员

公共构造函数

名称 描述
CDockingPanesRow::CDockingPanesRow 默认构造函数。

公共方法

名称 描述
CDockingPanesRow::AddPane
CDockingPanesRow::AddPaneFromRow
CDockingPanesRow::ArrangePanes 根据指定边距和间距参数将窗格排成行。
CDockingPanesRow::CalcFixedLayout
CDockingPanesRow::Create
CDockingPanesRow::ExpandStretchedPanes
CDockingPanesRow::ExpandStretchedPanesRect
CDockingPanesRow::FixupVirtualRects
CDockingPanesRow::GetAvailableLength
CDockingPanesRow::GetAvailableSpace
CDockingPanesRow::GetClientRect
CDockingPanesRow::GetDockSite
CDockingPanesRow::GetExtraSpace
CDockingPanesRow::GetGroupFromPane
CDockingPanesRow::GetID
CDockingPanesRow::GetMaxPaneSize
CDockingPanesRow::GetPaneCount
CDockingPanesRow::GetPaneList
CDockingPanesRow::GetRowAlignment
CDockingPanesRow::GetRowHeight
CDockingPanesRow::GetRowOffset
CDockingPanesRow::GetVisibleCount
CDockingPanesRow::GetWindowRect
CDockingPanesRow::HasPane
CDockingPanesRow::IsEmpty
CDockingPanesRow::IsExclusiveRow
CDockingPanesRow::IsHorizontal
CDockingPanesRow::IsVisible
CDockingPanesRow::Move
CDockingPanesRow::MovePane
CDockingPanesRow::OnResizePane
CDockingPanesRow::RedrawAll
CDockingPanesRow::RemovePane
CDockingPanesRow::ReplacePane
CDockingPanesRow::RepositionPanes
CDockingPanesRow::Resize
CDockingPanesRow::ResizeByPaneDivider
CDockingPanesRow::ScreenToClient
CDockingPanesRow::SetExtra
CDockingPanesRow::ShowDockSiteRow
CDockingPanesRow::ShowPane
CDockingPanesRow::UpdateVisibleState

备注

CDockingPanesRow 对象由停靠站点对象在内部创建。

示例

下面的示例演示如何从 CMFCAutoHideBar 对象获取 CDockingPanesRow 对象。

CMFCAutoHideBar *pParentBar = new CMFCAutoHideBar();
CDockingPanesRow *pParentRow = pParentBar->GetDockSiteRow();

继承层次结构

CObject

CDockingPanesRow

要求

标头:afxDockingPanesRow.h

CDockingPanesRow::AddPane

virtual void AddPane(
    CPane* pControlBar,
    AFX_DOCK_METHOD dockMethod,
    LPCRECT lpRect = NULL,
    BOOL bAddLast = FALSE);

参数

[in] pControlBar

[in] dockMethod

[in] lpRect

[in] bAddLast

备注

CDockingPanesRow::AddPaneFromRow

virtual void AddPaneFromRow(
    CPane* pControlBar,
    AFX_DOCK_METHOD dockMethod);

参数

[in] pControlBar

[in] dockMethod

备注

CDockingPanesRow::ArrangePanes

根据指定边距和间距参数将停靠窗格排成行。

virtual void ArrangePanes(
    int nMargin,
    int nSpacing);

参数

nMargin
[in] 指定行的左上角第一个窗格的偏移量(以像素为单位)。

nSpacing
[in] 指定窗格之间的间距(以像素为单位)。

注解

调用此方法来将窗格排列在它们将停靠的行中。 调用此方法后,必须调用 CDockingPanesRow::FixupVirtualRects(FALSE, NULL)

CDockingPanesRow::CalcFixedLayout

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

参数

[in] bStretch

[in] bHorz

返回值

注解

CDockingPanesRow::CDockingPanesRow

CDockingPanesRow(
    CDockSite* pParentDockBar,
    int nOffset,
    int nHeight);

参数

[in] pParentDockBar

[in] nOffset

[in] nHeight

备注

CDockingPanesRow::Create

virtual BOOL Create();

返回值

注解

CDockingPanesRow::ExpandStretchedPanes

void ExpandStretchedPanes();

注解

CDockingPanesRow::ExpandStretchedPanesRect

void ExpandStretchedPanesRect();

备注

CDockingPanesRow::FixupVirtualRects

void FixupVirtualRects(
    bool bMoveBackToVirtualRect,
    CPane* pBarToExclude = NULL);

参数

[in] bMoveBackToVirtualRect

[in] pBarToExclude

备注

CDockingPanesRow::GetAvailableLength

virtual int GetAvailableLength(BOOL bUseVirtualRect = FALSE) const;

参数

[in] bUseVirtualRect

返回值

注解

CDockingPanesRow::GetAvailableSpace

virtual void GetAvailableSpace(CRect& rect);

参数

[in] rect

备注

CDockingPanesRow::GetClientRect

void GetClientRect(CRect& rect) const;

参数

[in] rect

备注

CDockingPanesRow::GetDockSite

CDockSite* GetDockSite() const;

返回值

注解

CDockingPanesRow::GetExtraSpace

int GetExtraSpace() const;

返回值

注解

CDockingPanesRow::GetGroupFromPane

void GetGroupFromPane(
    CPane* pBar,
    CObList& lst);

参数

[in] pBar

[in] lst

备注

CDockingPanesRow::GetID

int GetID() const;

返回值

注解

CDockingPanesRow::GetMaxPaneSize

int GetMaxPaneSize(BOOL bSkipHiddenBars = TRUE) const;

参数

[in] bSkipHiddenBars

返回值

注解

CDockingPanesRow::GetPaneCount

int GetPaneCount() const;

返回值

注解

CDockingPanesRow::GetPaneList

const CObList& GetPaneList() const;

返回值

注解

CDockingPanesRow::GetRowAlignment

DWORD GetRowAlignment() const;

返回值

注解

CDockingPanesRow::GetRowHeight

int GetRowHeight() const;

返回值

注解

CDockingPanesRow::GetRowOffset

int GetRowOffset() const;

返回值

注解

CDockingPanesRow::GetVisibleCount

virtual int GetVisibleCount();

返回值

注解

CDockingPanesRow::GetWindowRect

void GetWindowRect(CRect& rect) const;

参数

[in] rect

备注

CDockingPanesRow::HasPane

BOOL HasPane(CBasePane* pControlBar);

参数

[in] pControlBar

返回值

注解

CDockingPanesRow::IsEmpty

virtual BOOL IsEmpty() const;

返回值

注解

CDockingPanesRow::IsExclusiveRow

virtual BOOL IsExclusiveRow() const;

返回值

注解

CDockingPanesRow::IsHorizontal

bool IsHorizontal() const;

返回值

注解

CDockingPanesRow::IsVisible

virtual BOOL IsVisible() const;

返回值

注解

CDockingPanesRow::Move

virtual void Move(int nOffset);

参数

[in] nOffset

备注

CDockingPanesRow::MovePane

void MovePane(
    CPane* pControlBar,
    CPoint ptOffset,
    BOOL bSwapControlBars,
    HDWP& hdwp);

void MovePane(
    CPane* pControlBar,
    CRect rectTarget,
    HDWP& hdwp);

void MovePane(
    CPane* pControlBar,
    int nOffset,
    bool bForward,
    HDWP& hdwp);

void MovePane(
    CPane* pControlBar,
    int nAbsolutOffset,
    HDWP& hdwp);

参数

[in] pControlBar

[in] ptOffset

[in] bSwapControlBars

[in] hdwp

[in] rectTarget

[in] nOffset

[in] bForward

[in] nAbsolutOffset

备注

CDockingPanesRow::OnResizePane

virtual void OnResizePane(CBasePane* pControlBar);

参数

[in] pControlBar

备注

CDockingPanesRow::RedrawAll

void RedrawAll();

注解

CDockingPanesRow::RemovePane

virtual void RemovePane(CPane* pControlBar);

参数

[in] pControlBar

备注

CDockingPanesRow::ReplacePane

virtual BOOL ReplacePane(
    CPane* pBarOld,
    CPane* pBarNew);

参数

[in] pBarOld

[in] pBarNew

返回值

注解

CDockingPanesRow::RepositionPanes

virtual void RepositionPanes(
    CRect& rectNewParentBarArea,
    UINT nSide = (UINT)-1,
    BOOL bExpand = FALSE,
    int nOffset = 0);

参数

[in] rectNewParentBarArea

[in] nSide

[in] bExpand

[in] nOffset

备注

CDockingPanesRow::Resize

virtual int Resize(int nOffset);

参数

[in] nOffset

返回值

注解

CDockingPanesRow::ResizeByPaneDivider

virtual int ResizeByPaneDivider(int /*ignored*/);

参数

[in] ignored

返回值

注解

CDockingPanesRow::ScreenToClient

void ScreenToClient(CRect& rect) const;

参数

[in] rect

备注

CDockingPanesRow::SetExtra

void SetExtra(
    int nExtraSpace,
    AFX_ROW_ALIGNMENT rowExtraAlign);

参数

[in] nExtraSpace

[in] rowExtraAlign

备注

CDockingPanesRow::ShowDockSiteRow

virtual void ShowDockSiteRow(
    BOOL bShow,
    BOOL bDelay);

参数

[in] bShow

[in] bDelay

备注

CDockingPanesRow::ShowPane

virtual BOOL ShowPane(
    CPane* pControlBar,
    BOOL bShow,
    BOOL bDelay = FALSE);

参数

[in] pControlBar

[in] bShow

[in] bDelay

返回值

注解

CDockingPanesRow::UpdateVisibleState

virtual void UpdateVisibleState(BOOL bDelay);

参数

[in] bDelay

备注

另请参阅

层次结构图

CObject 类
CDockSite 类
CPane 类