Compartir a través de


CMFCAutoHideBar (clase)

La clase CMFCAutoHideBar es una clase especial de la barra de herramientas que implementa la característica Ocultar automáticamente.

Para obtener información más detallada, consulta el código fuente que se ubica en la carpeta VC\atlmfc\src\mfc de la instalación de Visual Studio.

Sintaxis

class CMFCAutoHideBar : public CPane

Miembros

Constructores públicos

Nombre Descripción
CMFCAutoHideBar::CMFCAutoHideBar

Métodos públicos

Nombre Descripción
CMFCAutoHideBar::AddAutoHideWindow
CMFCAutoHideBar::AllowShowOnPaneMenu (Invalida CPane::AllowShowOnPaneMenu).
CMFCAutoHideBar::CalcFixedLayout (Invalida CBasePane::CalcFixedLayout).
CMFCAutoHideBar::Create Crea una barra de control y la adjunta al objeto CPane. (Invalida CPane::Create).
CMFCAutoHideBar::GetFirstAHWindow
CMFCAutoHideBar::GetVisibleCount
CMFCAutoHideBar::OnShowControlBarMenu Lo llama el marco de trabajo cuando está a punto de mostrarse un menú de panel especial. (Invalida CPane::OnShowControlBarMenu).
CMFCAutoHideBar::RemoveAutoHideWindow
CMFCAutoHideBar::SetActiveInGroup (Invalida CPane::SetActiveInGroup).
CMFCAutoHideBar::SetRecentVisibleState
CMFCAutoHideBar::ShowAutoHideWindow
CMFCAutoHideBar::StretchPane Expande un panel vertical u horizontalmente. (Invalida CBasePane::StretchPane).
CMFCAutoHideBar::UnSetAutoHideMode
CMFCAutoHideBar::UpdateVisibleState

Miembros de datos

Nombre Descripción
CMFCAutoHideBar::m_nShowAHWndDelay El tiempo de retraso entre el momento en que el usuario coloca el cursor del mouse sobre una clase CMFCAutoHideButton y el momento en que el marco muestra la ventana asociada.

Comentarios

Cuando el usuario cambia un panel de acoplamiento a modo de ocultación automática, el marco crea automáticamente un objeto CMFCAutoHideBar. También crea los objetos necesarios CAutoHideDockSite y CMFCAutoHideButton. Cada objeto CAutoHideDockSite está asociado a un CMFCAutoHideButton individual.

La clase CMFCAutoHideBar implementa la presentación de un CAutoHideDockSite cuando el mouse de un usuario se mantiene sobre un CMFCAutoHideButton. Cuando la barra de herramientas recibe un mensaje WM_MOUSEMOVE, CMFCAutoHideBar inicia un temporizador. Cuando el temporizador finaliza, envía a la barra de herramientas una notificación de evento WM_TIMER. Para controlar este evento, la barra de herramientas comprueba si el puntero del mouse está situado sobre el mismo botón de ocultación automática que cuando se inició el temporizador. Si es así, se muestra el objeto CAutoHideDockSite adjunto.

Para controlar la duración del retraso del temporizador, defina m_nShowAHWndDelay. El valor predeterminado es de 400 ms.

Ejemplo

En el ejemplo siguiente se muestra cómo construir un objeto CMFCAutoHideBar y usar su método GetDockSiteRow.

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

Jerarquía de herencia

CObject

CCmdTarget

CWnd

CBasePane

CPane

CMFCAutoHideBar

Requisitos

Encabezado: afxautohidebar.h

CMFCAutoHideBar::AddAutoHideWindow

Agrega funcionalidad a una ventana CDockablePane que le permite ocultarse automáticamente.

CMFCAutoHideButton* AddAutoHideWindow(
    CDockablePane* pAutoHideWnd,
    DWORD dwAlignment);

Parámetros

pAutoHideWnd
[in] La ventana que se quiere ocultar.

dwAlignment
[in] Un valor que especifica la alineación del botón Ocultar automáticamente con la ventana de la aplicación.

Valor devuelto

Comentarios

El parámetro dwAlignment indica dónde reside el botón Ocultar automáticamente en la aplicación. El parámetro puede establecerse en uno de los valores siguientes:

  • CBRS_ALIGN_LEFT

  • CBRS_ALIGN_RIGHT

  • CBRS_ALIGN_TOP

  • CBRS_ALIGN_BOTTOM

CMFCAutoHideBar::AllowShowOnPaneMenu

virtual BOOL AllowShowOnPaneMenu() const;

Valor devuelto

Comentarios

CMFCAutoHideBar::CalcFixedLayout

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

Parámetros

[in] bStretch

[in] bHorz

Valor devuelto

Comentarios

CMFCAutoHideBar::CMFCAutoHideBar

Construye un objeto CMFCAutoHideBar.

CMFCAutoHideBar();

Comentarios

CMFCAutoHideBar::Create

virtual BOOL Create(
    LPCTSTR lpszClassName,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID,
    DWORD dwControlBarStyle = AFX_DEFAULT_PANE_STYLE,
    CCreateContext* pContext = NULL);

Parámetros

lpszClassName

dwStyle

rect

pParentWnd

Nid

dwControlBarStyle

pContext

Valor devuelto

Comentarios

CMFCAutoHideBar::GetFirstAHWindow

Devuelve un puntero a la primera ventana de ocultación automática de la aplicación.

CDockablePane* GetFirstAHWindow();

Valor devuelto

La primera ventana de ocultación automática de la aplicación o NULL si no existe ninguna.

Comentarios

CMFCAutoHideBar::GetVisibleCount

Obtiene el número de botones de ocultación automática que se muestran.

int GetVisibleCount();

Valor devuelto

Devuelve el número de botones de ocultación automática que se muestran.

Comentarios

CMFCAutoHideBar::m_nShowAHWndDelay

El tiempo de retraso entre el momento en que el usuario coloca el cursor del mouse sobre una clase CMFCAutoHideButton y el momento en que el marco muestra la ventana asociada.

int CMFCAutoHideBar::m_nShowAHWndDelay = 400;

Comentarios

Cuando el usuario coloca el cursor del mouse sobre un elemento CMFCAutoHideButton, hay un ligero retraso antes de que el marco muestre la ventana asociada. Este parámetro determina la longitud de ese retraso en milisegundos.

CMFCAutoHideBar::OnShowControlBarMenu

virtual BOOL OnShowControlBarMenu(CPoint);

Parámetros

[in] CPoint

Valor devuelto

Comentarios

CMFCAutoHideBar::RemoveAutoHideWindow

Elimina y destruye la ventana de ocultación automática.

    BOOL RemoveAutoHideWindow(CDockablePane* pAutoHideWnd);

Parámetros

CDockablePane* pAutoHideWnd la ventana de ocultación automática que se va a quitar.

Valor devuelto

TRUE si es correcto; en caso contrario, FALSE.

Comentarios

CMFCAutoHideBar::SetActiveInGroup

Marca una barra de ocultación automáticamente como activa.

virtual void SetActiveInGroup(BOOL bActive);

Parámetros

[in] BOOL bActive TRUE para establecerlo en activo; de lo contrario, FALSE.

Comentarios

Vea CPane::SetActiveInGroup.

CMFCAutoHideBar::SetRecentVisibleState

void SetRecentVisibleState(BOOL bState);

Parámetros

bState
[in] Estado que se va a establecer.

Comentarios

CMFCAutoHideBar::ShowAutoHideWindow

Muestra la ventana de ocultación automática.

BOOL ShowAutoHideWindow(
    CDockablePane* pAutoHideWnd,
    BOOL bShow,
    BOOL bDelay);

Parámetros

pAutoHideWnd
[in] Ventana que se va a mostrar.

bShow
[in] TRUE para mostrar la ventana.

bDelay
[in] Este parámetro se ignora.

Valor devuelto

TRUE si es correcto; en caso contrario, FALSE.

Comentarios

CMFCAutoHideBar::StretchPane

Cambia el tamaño de la barra de ocultación automática en estado contraído para ajustarse al objeto CMFCAutoHideButton .

virtual CSize StretchPane(
    int nLength,
    BOOL bVert);

Parámetros

nLength
[in] En la implementación base, no se usa este valor. En las implementaciones derivadas, use este valor para indicar la longitud del panel cuyo tamaño ha cambiado.

bVert
[in] En la implementación base, no se usa este valor. En las implementaciones derivadas, use TRUE para controlar el caso donde la barra de ocultación automática está contraída verticalmente y FALSE para el caso donde la barra de ocultación automática está contraída horizontalmente.

Valor devuelto

El tamaño resultante del panel cuyo tamaño ha cambiado.

Comentarios

Las clases derivadas pueden reemplazar este método para personalizar el comportamiento.

CMFCAutoHideBar::UnSetAutoHideMode

Deshabilita el modo de ocultación automática para un grupo de barras de ocultación automática.

void UnSetAutoHideMode(CDockablePane* pFirstBarInGroup)

Parámetros

[in] pFirstBarInGroup: puntero a la primera barra de ocultación automática del grupo.

Comentarios

CMFCAutoHideBar::UpdateVisibleState

El marco de trabajo la llama cuando es necesario volver a dibujar la barra de ocultación automática.

void UpdateVisibleState();

Comentarios

Consulte también

Gráfico de jerarquías
Clases
CPane (clase)
CAutoHideDockSite (clase)
CMFCAutoHideButton (clase)