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
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
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)