Поделиться через


Класс CAutoHideDockSite

Класс CAutoHideDockSite CDockSite расширяется для реализации панелей док-станции автоматического скрытия.

Синтаксис

class CAutoHideDockSite : public CDockSite

Участники

Открытые конструкторы

Имя Описание
Имя. Описание
CAutoHideDockSite::CAutoHideDockSite Формирует объект CAutoHideDockSite.
CAutoHideDockSite::~CAutoHideDockSite Деструктор.

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

Имя Описание
Имя. Описание
CAutoHideDockSite::AllowShowOnPaneMenu Указывает, отображается ли он CAutoHideDockSite в меню области.
CAutoHideDockSite::CanAcceptPane Определяет, является ли базовый объект панели производным от класса CMFCAutoHideBar.
CAutoHideDockSite::D ockPane Закрепление области к этому CAuotHideDockSite объекту.
CAutoHideDockSite::GetAlignRect Извлекает размер сайта док-станции в координатах экрана.
CAutoHideDockSite::RepositionPanes Перерисовывает область в CAutoHideDockSite области с глобальными полями и интервалами кнопок.
CAutoHideDockSite::SetOffsetLeft Задает поле слева от панели закрепления.
CAutoHideDockSite::SetOffsetRight Задает поле справа от панели закрепления.
CAutoHideDockSite::UnSetAutoHideMode Вызывает CMFCAutoHideBar::UnSetAutoHideMode для объектов.CAutoHideDockSite

Элементы данных

Имя Описание
Имя. Описание
CAutoHideDockSite::m_nExtraSpace Определяет размер пространства между панелями инструментов и краем панели док-станции. Это пространство измеряется от левого края или верхнего края в зависимости от выравнивания пространства док-станции.

Замечания

При вызове CFrameWndEx::EnableAutoHidePanes платформа автоматически создает CAutoHideDockSite объект. В большинстве случаев не нужно создавать экземпляры или использовать этот класс напрямую.

Панель закрепления — это разрыв между левой стороной панели док-станции и левой стороной класса CMFCAutoHideButton.

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

CObject

CCmdTarget

CWnd

CBasePane

CDockSite

Пример

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

CAutoHideDockSite *pParentDockBar = DYNAMIC_DOWNCAST(CAutoHideDockSite, pParentBar->GetParentDockSite());
pParentDockBar->SetOffsetLeft(10);
pParentDockBar->SetOffsetRight(10);

Требования

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

CAutoHideDockSite::CanAcceptPane

Определяет, является ли базовая область объектом CMFCAutoHideBar или производным от CMFCAutoHideBarнего.

virtual BOOL CanAcceptPane(const CBasePane* pBar) const;

Параметры

pBar
[in] Базовая область, которая тестирует платформу.

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

ЗНАЧЕНИЕ TRUE, если pBar является производным от CMFCAutoHideBar; Значение FALSE в противном случае.

Замечания

Если объект базовой панели является производным, CMFCAutoHideBarон может содержать CAutoHideDockSiteобъект.

CAutoHideDockSite::D ockPane

Закрепление области к этому объекту CAutoHideDockSite .

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

Параметры

pWnd
[in] Область, которая закрепивает платформу.

dockMethod
[in] Параметры закрепления области.

lpRect
[in] Прямоугольник, указывающий границы закрепленной панели.

Замечания

Реализация по умолчанию не использует параметр dockMethod, который предоставляется для дальнейшего использования.

Если значение lpRect равно NULL, платформа помещает панель в расположение по умолчанию на сайте док-станции. Если сайт док-станции является горизонтальным, расположение по умолчанию находится в левом углу сайта док-станции. В противном случае расположение по умолчанию находится в верхней части сайта док-станции.

CAutoHideDockSite::GetAlignRect

Извлекает размер сайта док-станции в координатах экрана.

void GetAlignRect(CRect& rect) const;

Параметры

rect
[in] Ссылка на прямоугольник. Метод сохраняет размер сайта док-станции в этом прямоугольнике.

Замечания

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

CAutoHideDockSite::m_nExtraSpace

Размер пространства между краями класса CAutoHideDockSite и объектами класса CMFCAutoHideBar.

static int m_nExtraSpace;

Замечания

CMFCAutoHideBar При закреплении на объекте CAutoHideDockSiteон не должен занимать весь сайт док-станции. Эта глобальная переменная управляет дополнительным пространством между левой или верхней границей CMFCAutoHideBar и соответствующим CAutoHideDockSite краем. Используется ли верхний или левый край от текущего выравнивания.

CAutoHideDockSite::SetOffsetLeft

Задает поле слева от панели закрепления.

void SetOffsetLeft(int nOffset);

Параметры

nOffset
[in] Новое смещение.

Замечания

Объекты CMFCAutoHideBar размещаются статически на объекте CAutoHideDockSite . Это означает, что пользователь не может вручную изменить расположение CMFCAutoHideBar объектов. Метод SetOffsetLeft управляет интервалом между левой стороной левой CMFCAutoHideBar части и левой стороной CAutoHideDockSite.

CAutoHideDockSite::SetOffsetRight

Задает поле справа от панели закрепления.

void SetOffsetRight(int nOffset);

Параметры

nOffset
[in] Новое смещение.

Замечания

Объекты CMFCAutoHideBar размещаются статически на объекте CAutoHideDockSite . Это означает, что пользователь не может вручную изменить расположение CMFCAutoHideBar объектов. Метод SetOffsetRight управляет интервалом между правой стороной правой CMFCAutoHideBar и правой CAutoHideDockSiteстороны.

CAutoHideDockSite::RepositionPanes

Перерисовывает панели на сайте CAutoHideDockSite.

virtual void RepositionPanes(CRect& rectNewClientArea);

Параметры

rectNewClientArea
[in] Зарезервированное значение.

Замечания

Реализация по умолчанию не использует rectNewClientArea. Она перерисовывает области с полями глобальной панели инструментов и интервалами кнопок.

CAutoHideDockSite::UnSetAutoHideMode

Вызывает CMFCAutoHideBar::UnSetAutoHideMode для объектов на сайте док-станции.

void UnSetAutoHideMode(CMFCAutoHideBar* pAutoHideToolbar);

Параметры

pAutoHideToolbar
[in] Указатель на область объектов CMFCAutoHideBar , расположенную на панели CAutoHideDockSiteобъектов .

Замечания

Этот метод ищет строку, содержащую pAutoHideToolbar. Он вызывает CMFCAutoHideBar.UnSetAutoHideMode все CMFCAutoHideBar объекты в этой строке. Если pAutoHideToolbar не найден или имеет значение NULL, этот метод вызывает CMFCAutoHideBar.UnSetAutoHideMode все CMFCAutoHideBar объекты в объекте CAutoHideDockSite.

См. также

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