Clase CAutoHideDockSite
El CAutoHideDockSite
prolonga 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
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
, CAutoHideDockSite
no 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
.