Класс CDockSite

Дополнительные сведения см. в исходном коде, расположенном в папке VC\atlmfc\src\mfc установки Visual Studio.

Предоставляет функциональные возможности для упорядочения областей, которые являются производными от CPane Class , в наборы строк.

Синтаксис

class CDockSite: public CBasePane

Участники

Открытые методы

Имя Описание
CDockSite::AddRow
CDockSite::AdjustDockingLayout (Переопределения CBasePane::AdjustDockingLayout.)
CDockSite::AdjustLayout (Переопределения CBasePane::AdjustLayout.)
CDockSite::AlignDockSite
CDockSite::CalcFixedLayout (Переопределения CBasePane::CalcFixedLayout.)
CDockSite::CanAcceptPane (Переопределения CBasePane::CanAcceptPane.)
CDockSite::CreateEx (Переопределения CBasePane::CreateEx.)
CDockSite::CreateRow
CDockSite::D ockPane (Переопределения CBasePane::D ockPane.)
CDockSite::D oesAllowDynInsertBefore (Переопределения CBasePane::D oesAllowDynInsertBefore.)
CDockSite::FindRowIndex
CDockSite::FixupVirtualRects
CDockSite::GetDockSiteID
CDockSite::GetDockSiteRowsList
CDocksite::IsAccessibilityCompatible (Переопределяет CBasePane::IsAccessibilityCompatible.)
CDockSite::IsDragMode
CDocksite::IsLastRow
CDocksite::IsrectWithindockSite
CDocksite::IsResizable (Переопределения CBasePane::IsResizable.)
CDockSite::MovePane
CDockSite::OnInsertRow
CDockSite::OnRemoveRow
CDockSite::OnResizeRow
CDockSite::OnSetWindowPos
CDockSite::OnShowRow
CDockSite::OnSizeParent
CDockSite::P aneFromPoint Возвращает область, закрепленную на сайте закрепления в точке, указанной данным параметром.
CDockSite::D ockPaneLeftOf Закрепляет область слева от другой области.
CDockSite::FindPaneByID Возвращает область, определенную по заданному идентификатору.
CDockSite::GetPaneList Возвращает список областей, которые закреплены на сайте закрепления.
CDockSite::RectSideFromPoint
CDockSite::RemovePane
CDockSite::RemoveRow
CDockSite::ReplacePane
CDockSite::RepositionPanes
CDockSite::ResizeDockSite
CDockSite::ResizeRow
CDockSite::ShowPane Отображает область.
CDockSite::ShowRow
CDockSite::SwapRows

Замечания

Платформа автоматически создает CDockSite объекты при вызове CFrameWndEx::EnableDocking. Окна сайта закрепления располагаются на границе области клиента в главном окне фрейма.

Обычно не нужно вызывать службы, предоставляемые сайтом док-станции, так как класс CFrameWndEx обрабатывает эти службы.

Пример

В следующем примере показывается, как создать объект класса CDockSite.

AFX_DOCKSITE_INFO info;
CDockSite *pDockBar = (CDockSite*)info.pDockBarRTC->CreateObject();

Иерархия наследования

CObject
└ CCmdTarget
└ CWnd
  └ CBasePane
   └ CDockSite

Требования

Заголовок: afxDockSite.h

CDockSite::AddRow

CDockingPanesRow* AddRow(
    POSITION pos,
    int nHeight);

Параметры

[in] Pos

[in] nHeight

Возвращаемое значение

Замечания

CDockSite::AdjustDockingLayout

virtual void AdjustDockingLayout();

Замечания

CDockSite::AdjustLayout

virtual void AdjustLayout();

Замечания

CDockSite::AlignDockSite

void AlignDockSite(
    const CRect& rectToAlignBy,
    CRect& rectResult,
    BOOL bMoveImmediately);

Параметры

[in] rectToAlignBy

[in] rectResult

[in] bMoveImmediately

Замечания

CDockSite::CalcFixedLayout

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

Параметры

[in] bStretch

[in] bHorz

Возвращаемое значение

Замечания

CDockSite::CanAcceptPane

virtual BOOL CanAcceptPane(const CBasePane* pBar) const;

Параметры

[in] pBar

Возвращаемое значение

Замечания

CDockSite::CreateEx

virtual BOOL CreateEx(
    DWORD dwStyleEx,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    DWORD dwControlBarStyle,
    CCreateContext* pContext = NULL);

Параметры

[in] dwStyleEx

[in] dwStyle

[in] rect

[in] pParentWnd

[in] dwControlBarStyle

[in] Pcontext

Возвращаемое значение

Замечания

CDockSite::CreateRow

virtual CDockingPanesRow* CreateRow(
    CDockSite* pParentDockBar,
    int nOffset,
    int nRowHeight);

Параметры

[in] pParentDockBar

[in] nOffset

[in] nRowHeight

Возвращаемое значение

Замечания

CDockSite::D ockPane

virtual void DockPane(
    CPane* pWnd,
    AFX_DOCK_METHOD dockMethod,
    LPCRECT lpRect = NULL);

Параметры

[in] pWnd

[in] dockMethod

[in] lpRect

Замечания

CDockSite::D ockPaneLeftOf

Закрепляет область слева от другой области.

virtual BOOL DockPaneLeftOf(
    CPane* pBarToDock,
    CPane* pTargetBar);

Параметры

pBarToDock
[in, out] Указатель на панель, на который необходимо закрепить слева от pTargetBar.

pTargetBar
[in, out] Указатель на целевую область.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если панель успешно закреплена; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

CDockSite::D oesAllowDynInsertBefore

virtual BOOL DoesAllowDynInsertBefore() const;

Возвращаемое значение

Замечания

CDockSite::FindPaneByID

Возвращает область с заданным идентификатором.

CPane* FindPaneByID(UINT nID);

Параметры

Nid
[in] Идентификатор команды области, который нужно найти.

Возвращаемое значение

Указатель на область с указанным идентификатором команды или NULL, если область не найдена.

Замечания

CDockSite::FindRowIndex

int FindRowIndex(CDockingPanesRow* pRow);

Параметры

[in] Нос

Возвращаемое значение

Замечания

CDockSite::FixupVirtualRects

virtual void FixupVirtualRects();

Замечания

CDockSite::GetDockSiteID

virtual UINT GetDockSiteID() const;

Возвращаемое значение

Замечания

CDockSite::GetDockSiteRowsList

const CObList& GetDockSiteRowsList() const;

Возвращаемое значение

Замечания

CDockSite::GetPaneList

Возвращает список панелей, которые закреплены на сайте док-станции.

const CObList& GetPaneList() const;

Возвращаемое значение

Ссылка только для чтения на список панелей, которые в настоящее время закреплены на панели док-станции.

CDocksite::IsAccessibilityCompatible

virtual BOOL IsAccessibilityCompatible();

Возвращаемое значение

Замечания

CDockSite::IsDragMode

virtual BOOL IsDragMode() const;

Возвращаемое значение

Замечания

CDocksite::IsLastRow

bool IsLastRow(CDockingPanesRow* pRow) const;

Параметры

[in] Нос

Возвращаемое значение

Замечания

CDocksite::IsrectWithindockSite

BOOL IsRectWithinDockSite(
    CRect rect,
    CPoint& ptDelta);

Параметры

[in] rect

[in] ptDelta

Возвращаемое значение

Замечания

CDocksite::IsResizable

virtual BOOL IsResizable() const;

Возвращаемое значение

Замечания

CDockSite::MovePane

virtual BOOL MovePane(
    CPane* pWnd,
    UINT nFlags,
    CPoint ptOffset);

Параметры

[in] pWnd

[in] nFlags

[in] ptOffset

Возвращаемое значение

Замечания

CDockSite::OnInsertRow

virtual void OnInsertRow(POSITION pos);

Параметры

[in] Pos

Замечания

CDockSite::OnRemoveRow

virtual void OnRemoveRow(
    POSITION pos,
    BOOL bByShow = FALSE);

Параметры

[in] Pos

[in] bByShow

Замечания

CDockSite::OnResizeRow

virtual int OnResizeRow(
    CDockingPanesRow* pRowToResize,
    int nOffset);

Параметры

[in] pRowToResize

[in] nOffset

Возвращаемое значение

Замечания

CDockSite::OnSizeParent

virtual void OnSizeParent(
    CRect& rectAvailable,
    UINT nSide,
    BOOL bExpand,
    int nOffset);

Параметры

[in] rectAvailable

[in] nSide

[in] bExpand

[in] nOffset

Замечания

CDockSite::OnSetWindowPos

virtual BOOL OnSetWindowPos(
    const CWnd* pWndInsertAfter,
    const CRect& rectWnd,
    UINT nFlags);

Параметры

[in] pWndInsertAfter

[in] rectWnd

[in] nFlags

Возвращаемое значение

Замечания

CDockSite::OnShowRow

virtual void OnShowRow(
    POSITION pos,
    BOOL bShow);

Параметры

[in] Pos

[in] bShow

Замечания

CDockSite::P aneFromPoint

Возвращает область, закрепленную на сайте закрепления в точке, указанной данным параметром.

virtual CPane* PaneFromPoint(CPoint pt);

Параметры

пт
[in] Точка в координатах экрана для получения области.

Возвращаемое значение

Указатель на область, расположенную в указанной точке или NULL, если в указанной точке не присутствует ни в какой области.

Замечания

CDockSite::RectSideFromPoint

static int __stdcall RectSideFromPoint(
    const CRect& rect,
    const CPoint& point);

Параметры

[in] rect

[in] Точки

Возвращаемое значение

Замечания

CDockSite::RemovePane

virtual void RemovePane(
    CPane* pWnd,
    AFX_DOCK_METHOD dockMethod);

Параметры

[in] pWnd

[in] dockMethod

Замечания

CDockSite::RemoveRow

void RemoveRow(CDockingPanesRow* pRow);

Параметры

[in] Нос

Замечания

CDockSite::ReplacePane

BOOL ReplacePane(
    CPane* pOldBar,
    CPane* pNewBar);

Параметры

[in] pOldBar

[in] pNewBar

Возвращаемое значение

Замечания

CDockSite::RepositionPanes

virtual void RepositionPanes(CRect& rectNewClientArea);

Параметры

[in] rectNewClientArea

Замечания

CDockSite::ResizeDockSite

void ResizeDockSite(
    int nNewWidth,
    int nNewHeight);

Параметры

[in] nNewWidth

[in] nNewHeight

Замечания

CDockSite::ResizeRow

int ResizeRow(
    CDockingPanesRow* pRow,
    int nNewSize,
    BOOL bAdjustLayout = TRUE);

Параметры

[in] Нос

[in] nNewSize

[in] bAdjustLayout

Возвращаемое значение

Замечания

CDockSite::ShowPane

Отображает область.

virtual BOOL ShowPane(
    CBasePane* pBar,
    BOOL bShow,
    BOOL bDelay,
    BOOL bActivate);

Параметры

pBar
[in, out] Указатель на область, отображаемую или скрытую.

bShow
[in] ЗНАЧЕНИЕ TRUE, чтобы указать, что область должна отображаться; Значение FALSE, указывающее, что область скрыта.

bDelay
[in] ЗНАЧЕНИЕ TRUE, чтобы указать, что макет области должен быть отложен до тех пор, пока не будет показана панель; в противном случае — ЗНАЧЕНИЕ FALSE.

bActivate
[in] Этот параметр не используется.

Возвращаемое значение

Значение TRUE, если панель была показана или скрыта успешно. ЗНАЧЕНИЕ FALSE, если указанная область не принадлежит этому сайту док-станции.

Замечания

Вызовите этот метод для отображения или скрытия закрепленных панелей. Как правило, не нужно CDockSite::ShowPane вызывать напрямую, так как он вызывается родительским окном фрейма или базовой панелью.

CDockSite::ShowRow

void ShowRow(
    CDockingPanesRow* pRow,
    BOOL bShow,
    BOOL bAdjustLayout);

Параметры

[in] Нос

[in] bShow

[in] bAdjustLayout

Замечания

CDockSite::SwapRows

void SwapRows(
    CDockingPanesRow* pFirstRow,
    CDockingPanesRow* pSecondRow);

Параметры

[in] pFirstRow

[in] pSecondRow

Замечания

См. также

Диаграмма иерархии
Классы
Класс CBasePane