Compartir a través de


Clase CAutoHideDockSite

El CAutoHideDockSiteprolonga la Clase CDockSite para implementar paneles de acoplamiento de ocultación automática.

Sintaxis

class CAutoHideDockSite : public CDockSite

Miembros

Constructores públicos

Nombre Descripción
Nombre Descripción
CAutoHideDockSite::CAutoHideDockSite Construye un objeto CAutoHideDockSite.
CAutoHideDockSite::~CAutoHideDockSite Destructor.

Métodos públicos

Nombre Descripción
Nombre Descripción
CAutoHideDockSite::AllowShowOnPaneMenu Indica si CAutoHideDockSite se muestra en el menú del panel.
CAutoHideDockSite::CanAcceptPane Determina si un objeto de panel base se deriva de la clase CMFCAutoHideBar.
CAutoHideDockSite::DockPane Acopla un panel a este objeto CAuotHideDockSite.
CAutoHideDockSite::GetAlignRect Recupera el tamaño del sitio de acoplamiento en coordenadas de pantalla.
CAutoHideDockSite::RepositionPanes Vuelve a dibujar el panel en CAutoHideDockSite con los márgenes globales y el espaciado del botón.
CAutoHideDockSite::SetOffsetLeft Establece el margen en el lado izquierdo de la barra de acoplamiento.
CAutoHideDockSite::SetOffsetRight Establece el margen en el lado derecho de la barra de acoplamiento.
CAutoHideDockSite::UnSetAutoHideMode Llama a CMFCAutoHideBar::UnSetAutoHideMode para objetos en CAutoHideDockSite.

Miembros de datos

Nombre Descripción
Nombre Descripción
CAutoHideDockSite::m_nExtraSpace Define el tamaño del espacio entre las barras de herramientas y el borde de la barra de acoplamiento. Este espacio se mide desde el borde izquierdo o desde el borde superior, dependiendo de la alineación del espacio de acoplamiento.

Comentarios

Al llamar a CFrameWndEx::EnableAutoHidePanes, el marco crea automáticamente un objeto CAutoHideDockSite. En la mayoría de los casos, no deberías tener que crear una instancia o usar esta clase directamente.

La barra de acoplamiento es el espacio entre el lado izquierdo del panel de acoplamiento y el lado izquierdo de la clase CMFCAutoHideButton.

Jerarquía de herencia

CObject

CCmdTarget

CWnd

CBasePane

CDockSite

Ejemplo

En el ejemplo siguiente se muestra cómo recuperar un CAutoHideDockSite objeto de un CMFCAutoHideBar objeto y cómo establecer los márgenes izquierdo y derecho de la barra de acoplamiento.

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

Requisitos

Encabezado: afxautohidedocksite.h

CAutoHideDockSite::CanAcceptPane

Determina si un panel base es un objeto CMFCAutoHideBar o derivado de CMFCAutoHideBar.

virtual BOOL CanAcceptPane(const CBasePane* pBar) const;

Parámetros

pBar
[in] El panel base que prueba el marco.

Valor devuelto

TRUE si pBar se deriva de CMFCAutoHideBar; False en caso contrario.

Comentarios

Si un objeto de panel base se deriva de CMFCAutoHideBar, puede contener un CAutoHideDockSite.

CAutoHideDockSite::DockPane

Acopla un panel a este objeto CAutoHideDockSite.

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

Parámetros

pWnd
[in] Panel que acopla el marco.

dockMethod
[in] Opciones de acoplamiento para el panel.

lpRect
[in] Un rectángulo que especifica los límites del panel acoplado.

Comentarios

La implementación predeterminada no usa el parámetro dockMethod, que se proporciona para su uso futuro.

Si lpRect es NULL, el marco coloca el panel en la ubicación predeterminada del sitio de acoplamiento. Si el sitio de acoplamiento es horizontal, la ubicación predeterminada se encuentra en el extremo izquierdo del sitio de acoplamiento. De lo contrario, la ubicación predeterminada está en la parte superior del sitio de acoplamiento.

CAutoHideDockSite::GetAlignRect

Recupera el tamaño del sitio de acoplamiento en coordenadas de pantalla.

void GetAlignRect(CRect& rect) const;

Parámetros

rect
[in] Una referencia a un rectángulo. El método almacena el tamaño del sitio de acoplamiento en este rectángulo.

Comentarios

El rectángulo se ajusta para los márgenes de desplazamiento para que no se incluyan.

CAutoHideDockSite::m_nExtraSpace

Tamaño del espacio entre los bordes de la clase CAutoHideDockSite y los objetos CMFCAutoHideBar Class.

static int m_nExtraSpace;

Comentarios

Cuando se acopla en CMFCAutoHideBar, CAutoHideDockSiteno debe ocupar todo el sitio de acoplamiento. Esta variable global controla el espacio adicional entre el borde izquierdo o superior de CMFCAutoHideBar y el borde correspondiente CAutoHideDockSite. Si se usa el borde superior o izquierdo depende de la alineación actual.

CAutoHideDockSite::SetOffsetLeft

Establece el margen en el lado izquierdo de la barra de acoplamiento.

void SetOffsetLeft(int nOffset);

Parámetros

nOffset
[in] El nuevo valor de desplazamiento.

Comentarios

Los objetos CMFCAutoHideBar se colocan estáticamente en el objeto CAutoHideDockSite. Esto significa que el usuario no puede cambiar manualmente la ubicación de los objetos CMFCAutoHideBar. El método SetOffsetLeft controla el espaciado entre el lado izquierdo del extremo izquierdo CMFCAutoHideBar y el lado izquierdo de CAutoHideDockSite.

CAutoHideDockSite::SetOffsetRight

Establece el margen en el lado derecho de la barra de acoplamiento.

void SetOffsetRight(int nOffset);

Parámetros

nOffset
[in] El nuevo valor de desplazamiento.

Comentarios

Los objetos CMFCAutoHideBar se colocan estáticamente en el objeto CAutoHideDockSite. Esto significa que el usuario no puede cambiar manualmente la ubicación de los objetos CMFCAutoHideBar. El método SetOffsetRight controla el espaciado entre el lado derecho del extremo derecho CMFCAutoHideBar y el lado derecho de CAutoHideDockSite.

CAutoHideDockSite::RepositionPanes

Vuelve a dibujar los paneles en CAutoHideDockSite.

virtual void RepositionPanes(CRect& rectNewClientArea);

Parámetros

rectNewClientArea
[in] Valor reservado.

Comentarios

La implementación predeterminada no usa rectNewClientArea. Vuelve a dibujar los paneles con los márgenes globales de la barra de herramientas y el espaciado del botón.

CAutoHideDockSite::UnSetAutoHideMode

Llama a CMFCAutoHideBar::UnSetAutoHideMode para objetos en el sitio de acople.

void UnSetAutoHideMode(CMFCAutoHideBar* pAutoHideToolbar);

Parámetros

pAutoHideToolbar
[in] Un puntero a un panel de objetos CMFCAutoHideBar ubicado en el CAutoHideDockSite.

Comentarios

Este método busca la fila que contiene pAutoHideToolbar. CMFCAutoHideBar.UnSetAutoHideMode Llama a todos los CMFCAutoHideBar objetos de esa fila. Si no se encuentra pAutoHideToolbar o es NULL, este método llama CMFCAutoHideBar.UnSetAutoHideMode a todos los CMFCAutoHideBar objetos de CAutoHideDockSite.

Consulte también

Gráfico de jerarquías
Clases
CDockSite (clase)