Compartir a través de


CMFCDropDownFrame (clase)

Proporciona funcionalidad de ventana de marco desplegable para barras de herramientas desplegables y botones de la barra de herramientas desplegables.

Sintaxis

class CMFCDropDownFrame : public CMiniFrameWnd

Miembros

Constructores públicos

Nombre Descripción
CMFCDropDownFrame::CMFCDropDownFrame Constructor predeterminado.
CMFCDropDownFrame::~CMFCDropDownFrame Destructor.

Métodos públicos

Nombre Descripción
CMFCDropDownFrame::Create Crea un objeto CMFCDropDownFrame.
CMFCDropDownFrame::CreateObject Usado por el marco de trabajo para crear una instancia dinámica de este tipo de clase.
CMFCDropDownFrame::GetParentMenuBar Recupera la barra de menús primaria del marco desplegable.
CMFCDropDownFrame::GetParentPopupMenu Recupera el menú emergente primario del marco desplegable.
CMFCDropDownFrame::GetThisClass Lo usa el marco para obtener un puntero al objeto CRuntimeClass asociado a este tipo de clase.
CMFCDropDownFrame::RecalcLayout Cambia la posición del marco desplegable.
CMFCDropDownFrame::SetAutoDestroy Establece si la ventana de la barra de herramientas desplegable secundaria se destruye automáticamente.

Comentarios

Esta clase no está pensada para usarse directamente desde el código.

El marco de trabajo usa esta clase para proporcionar un comportamiento de fotograma a las clases CMFCDropDownToolbar y CMFCDropDownToolbarButton. Para obtener más información sobre estas clases, vea CMFCDropDownToolBar (clase) y CMFCDropDownToolbarButton (clase).

Ejemplo

En el ejemplo siguiente se muestra cómo recuperar un puntero a un objeto CMFCDropDownFrame de una clase CFrameWnd y cómo establecer automáticamente la ventana de la barra de herramientas desplegable secundaria.

CFrameWnd *pTopFrame = AFXGetParentFrame(this);
if (pTopFrame == NULL)
{
   return FALSE;
}

CMFCDropDownFrame *pDropFrame = DYNAMIC_DOWNCAST(CMFCDropDownFrame, pTopFrame);
pDropFrame->SetAutoDestroy(true);

Jerarquía de herencia

CObject

CCmdTarget

CWnd

CFrameWnd

CMiniFrameWnd

CMFCDropDownFrame

Requisitos

Encabezado: afxdropdowntoolbar.h

CMFCDropDownFrame::Create

Crea un objeto CMFCDropDownFrame.

virtual BOOL Create(
    CWnd* pWndParent,
    int x,
    int y,
    CMFCDropDownToolBar* pWndOriginToolbar);

Parámetros

pWndParent
[in] Ventana primaria del marco desplegable.

x
[in] Coordenada de pantalla horizontal para la ubicación del marco hacia abajo.

y
[in] Coordenada de pantalla vertical para la ubicación del marco hacia abajo.

pWndOriginToolbar
[in] Barra de herramientas que tiene los botones desplegables que usa este método para rellenar el nuevo objeto de marco desplegable.

Valor devuelto

TRUE si el marco desplegable se creó correctamente; en caso contrario, FALSE.

Comentarios

Este método llama al método CMiniFrameWnd::CreateEx base para crear la ventana de marco desplegable con el estilo WS_POPUP. La ventana de marco desplegable aparece en las coordenadas de pantalla especificadas. Este método produce un error si el método CMiniFrameWnd::CreateEx devuelve FALSE.

La clase CMFCDropDownFrame crea una copia del parámetro CMFCDropDownToolBar proporcionado. Este método copia las imágenes de botón y los estados del botón del parámetro pWndOriginToolbar al miembro de datos m_pWndOriginToolbar.

CMFCDropDownFrame::GetParentMenuBar

Recupera la barra de menús primaria del marco desplegable.

CMFCMenuBar* GetParentMenuBar() const;

Valor devuelto

Puntero a la barra de menús primaria del marco desplegable o NULL si el marco no tiene ningún elemento primario.

Comentarios

Este método recupera la barra de menús primaria del botón primario. Este método devuelve NULL si el marco desplegable no tiene ningún botón primario o el botón primario no tiene ninguna barra de menús primaria.

CMFCDropDownFrame::GetParentPopupMenu

Recupera el menú emergente primario del marco desplegable.

CMFCDropDownFrame* GetParentPopupMenu() const;

Valor devuelto

Puntero a la barra de menús primaria del marco desplegable o NULL si el marco no tiene ningún elemento primario.

Comentarios

Este método recupera la barra de menús primaria del botón primario. Este método devuelve NULL si el marco desplegable no tiene ningún botón primario o el botón primario no tiene ningún menú primario.

CMFCDropDownFrame::RecalcLayout

Cambia la posición del marco desplegable.

virtual void RecalcLayout(BOOL bNotify = TRUE);

Parámetros

bNotify
[in] Sin utilizar.

Comentarios

El marco llama a este método cuando se crea el marco desplegable o se cambia el tamaño de la ventana primaria. Este método calcula la posición y el tamaño del marco desplegable mediante la posición y el tamaño de la ventana primaria.

CMFCDropDownFrame::SetAutoDestroy

Establece si la ventana de la barra de herramientas desplegable secundaria se destruye automáticamente.

void SetAutoDestroy(BOOL bAutoDestroy = TRUE);

Parámetros

bAutoDestroy
[in] TRUE para destruir automáticamente la ventana de la barra de herramientas desplegable asociada; de lo contrario, FALSE.

Comentarios

Si bAutoDestroy es TRUE, el destructor CMFCDropDownFrame destruye la ventana de la barra de herramientas desplegable asociada. El valor predeterminado es TRUE.

Consulte también

Gráfico de jerarquías
Clases
CMFCDropDownToolBar (clase)
CMFCDropDownToolbarButton (clase)