Share via


CMFCMenuBar (clase)

Una barra de menús que implementa el acoplamiento. 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 CMFCMenuBar : public CMFCToolbar

Miembros

Métodos públicos

Nombre Descripción
CMFCMenuBar::AdjustLocations (Invalida CMFCToolBar::AdjustLocations).
CMFCMenuBar::AllowChangeTextLabels Especifica si las etiquetas de texto se pueden mostrar en imágenes de los botones de la barra de herramientas. (Invalida CMFCToolBar::AllowChangeTextLabels.)
CMFCMenuBar::AllowShowOnPaneMenu (Invalida CPane::AllowShowOnPaneMenu).
CMFCMenuBar::CalcFixedLayout Calcula el tamaño horizontal de la barra de herramientas. (Invalida CMFCToolBar::CalcFixedLayout.)
CMFCMenuBar::CalcLayout (Invalida CMFCToolBar::CalcLayout).
CMFCMenuBar::CalcMaxButtonHeight Calcula el alto máximo de los botones de la barra de herramientas. (Invalida CMFCToolBar::CalcMaxButtonHeight.)
CMFCMenuBar::CanBeClosed Especifica si un usuario puede cerrar la barra de herramientas. (Invalida CMFCToolBar::CanBeClosed.)
CMFCMenuBar::CanBeRestored Determina si el sistema puede restaurar una barra de herramientas a su estado original después de la personalización. (Invalida CMFCToolBar::CanBeRestored.)
CMFCMenuBar::Create Crea un control de menú y lo asocia a un objeto CMFCMenuBar.
CMFCMenuBar::CreateEx Crea un objeto CMFCMenuBar con opciones de estilo adicionales.
CMFCMenuBar::CreateFromMenu Inicializa un objeto CMFCMenuBar. Acepta un parámetro HMENU que actúa como plantilla para un CMFCMenuBar rellenado.
CMFCMenuBar::EnableHelpCombobox Habilita un cuadro combinado Ayuda que se encuentra en el lado derecho de la barra de menús.
CMFCMenuBar::EnableMenuShadows Especifica si se muestran sombras para los menús emergentes.
CMFCMenuBar::GetAvailableExpandSize (Invalida CPane::GetAvailableExpandSize.)
CMFCMenuBar::GetColumnWidth Devuelve el ancho de los botones de la barra de herramientas. (Invalida CMFCToolBar::GetColumnWidth.)
CMFCMenuBar::GetDefaultMenu Devuelve un identificador al menú original del archivo de recursos.
CMFCMenuBar::GetDefaultMenuResId Devuelve el identificador de recurso del menú original del archivo de recursos.
CMFCMenuBar::GetFloatPopupDirection
CMFCMenuBar::GetForceDownArrows
CMFCMenuBar::GetHelpCombobox Devuelve un puntero al cuadro combinado Ayuda .
CMFCMenuBar::GetHMenu Devuelve el identificador al menú que está asociado al objeto CMFCMenuBar.
CMFCMenuBar::GetMenuFont Devuelve la fuente global actual para los objetos de menú.
CMFCMenuBar::GetMenuItem Devuelve el botón de la barra de herramientas asociado al índice de elemento proporcionado.
CMFCMenuBar::GetRowHeight Devuelve el alto de los botones de la barra de herramientas. (Invalida CMFCToolBar::GetRowHeight.)
CMFCMenuBar::GetSystemButton
CMFCMenuBar::GetSystemButtonsCount
CMFCMenuBar::GetSystemMenu
CMFCMenuBar::HighlightDisabledItems Indica si los elementos de menú deshabilitados están resaltados.
CMFCMenuBar::IsButtonExtraSizeAvailable Determina si la barra de herramientas puede mostrar botones que tienen bordes extendidos. (Invalida CMFCToolBar::IsButtonExtraSizeAvailable.)
CMFCMenuBar::IsHighlightDisabledItems Indica si los elementos de menú deshabilitados están resaltados.
CMFCMenuBar::IsMenuShadows Indica si las sombras se dibujan para los menús emergentes.
CMFCMenuBar::IsRecentlyUsedMenus Indica si los comandos de menú usados recientemente se muestran en la barra de menús.
CMFCMenuBar::IsShowAllCommands Indica si los menús emergentes muestran todos los comandos.
CMFCMenuBar::IsShowAllCommandsDelay Indica si los menús muestran todos los comandos después de un breve retraso.
CMFCMenuBar::LoadState Carga el estado del objeto CMFCMenuBar desde el registro.
CMFCMenuBar::OnChangeHot Lo llama el marco cuando un usuario selecciona un botón en la barra de herramientas. (Invalida CMFCToolBar::OnChangeHot.)
CMFCMenuBar::OnDefaultMenuLoaded El marco llama a este elemento cuando una ventana de marco carga el menú predeterminado desde el archivo de recursos.
CMFCMenuBar::OnSendCommand (Invalida CMFCToolBar::OnSendCommand).
CMFCMenuBar::OnSetDefaultButtonText El marco llama a este elemento cuando un menú está en modo de personalización y el usuario cambia el texto de un elemento de menú.
CMFCMenuBar::OnToolHitTest (Invalida CMFCToolBar::OnToolHitTest).
CMFCMenuBar::PreTranslateMessage (Invalida CMFCToolBar::PreTranslateMessage).
CMFCMenuBar::RestoreOriginalstate El marco llama a este elemento cuando un menú está en modo de personalización y el usuario selecciona Restablecer de la barra de menús.
CMFCMenuBar::SaveState Guarda el estado del objeto CMFCMenuBar en el registro.
CMFCMenuBar::SetDefaultMenuResId Establece el menú original en el archivo de recursos.
CMFCMenuBar::SetForceDownArrows
CMFCMenuBar::SetMaximizeMode El marco llama a este elemento cuando una ventana secundaria de MDI cambia su modo de presentación. Si la ventana secundaria de MDI se maximiza recientemente o deja de estar maximizada, este método actualiza la barra de menús.
CMFCMenuBar::SetMenuButtonRTC Establece la información de clase de runtime que se genera cuando el usuario crea dinámicamente botones de menú.
CMFCMenuBar::SetMenuFont Establece la fuente de todos los menús de la aplicación.
CMFCMenuBar::SetRecentlyUsedMenus Especifica si una barra de menús muestra comandos de menú usados recientemente.
CMFCMenuBar::SetShowAllCommands Especifica si la barra de menús muestra todos los comandos.

Comentarios

La clase CMFCMenuBar es una barra de menús que implementa la funcionalidad de acoplamiento. Se parece a una barra de herramientas, aunque no se puede cerrar, siempre se muestra.

CMFCMenuBar admite la opción de mostrar objetos de elemento de menú usados recientemente. Si esta opción está habilitada, CMFCMenuBar muestra solo un subconjunto de los comandos disponibles en la primera vista. A partir de entonces, los comandos usados recientemente se muestran junto con el subconjunto original de comandos. Además, el usuario siempre puede expandir el menú para ver todos los comandos disponibles. Por lo tanto, cada comando disponible está configurado para mostrarse constantemente o para mostrar solo si se ha seleccionado recientemente.

Para usar un objeto CMFCMenuBar, insértelo en el objeto de marco de ventana principal. Al procesar el mensaje WM_CREATE, llame al método CMFCMenuBar::Create o CMFCMenuBar::CreateEx. Independientemente de la función de creación que use, pase un puntero a la ventana de marco principal. A continuación, habilite el acoplamiento mediante una llamada a CFrameWndEx::EnableDocking. Acople este menú llamando a CFrameWndEx::DockPane.

Ejemplo

En el siguiente ejemplo se muestra cómo usar los distintos métodos en la clase CMFCMenuBar . En el ejemplo se muestra cómo establecer el estilo del panel, habilitar el botón Personalizar, habilitar un cuadro ayuda, habilitar sombras para menús emergentes y actualizar la barra de menús. Este fragmento de código forma parte del ejemplo de demostración de IE.

CMFCMenuBar m_wndMenuBar;
m_wndMenuBar.SetPaneStyle(m_wndMenuBar.GetPaneStyle() | CBRS_SIZE_DYNAMIC);
m_wndMenuBar.EnableCustomizeButton(TRUE, -1, _T(""));
// first parameter is the command ID for the button of the Help combo box
// third parameter is the width of the button for the combo box in pixels.
m_wndMenuBar.EnableHelpCombobox(1, _T("enter text here"), 30);
m_wndMenuBar.EnableMenuShadows();
m_wndMenuBar.SetMaximizeMode(true);

Jerarquía de herencia

CObject

CCmdTarget

CWnd

CBasePane

CPane

CMFCBaseToolBar

CMFCToolBar

CMFCMenuBar

Requisitos

Encabezado: afxmenubar.h

CMFCMenuBar::AdjustLocations

Ajusta las posiciones de los elementos de menú en la barra de menús.

virtual void AdjustLocations();

Comentarios

CMFCMenuBar::AllowChangeTextLabels

Determina si las etiquetas de texto se permiten en las imágenes de la barra de menús.

virtual BOOL AllowChangeTextLabels() const;

Valor devuelto

Devuelve TRUE si el usuario puede elegir mostrar etiquetas de texto en imágenes.

Comentarios

CMFCMenuBar::AllowShowOnPaneMenu

virtual BOOL AllowShowOnPaneMenu() const;

Valor devuelto

Comentarios

CMFCMenuBar::CalcFixedLayout

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

Parámetros

[in] bStretch

[in] bHorz

Valor devuelto

Comentarios

CMFCMenuBar::CalcLayout

virtual CSize CalcLayout(
    DWORD dwMode,
    int nLength = -1);

Parámetros

[in] dwMode

[in] nLength

Valor devuelto

Comentarios

CMFCMenuBar::CalcMaxButtonHeight

virtual int CalcMaxButtonHeight();

Valor devuelto

Comentarios

CMFCMenuBar::CanBeClosed

virtual BOOL CanBeClosed() const;

Valor devuelto

Comentarios

CMFCMenuBar::CanBeRestored

virtual BOOL CanBeRestored() const;

Valor devuelto

Comentarios

CMFCMenuBar::Create

Crea un control de menú y lo asocia a un objeto CMFCMenuBar.

virtual BOOL Create(
    CWnd* pParentWnd,
    DWORD dwStyle = AFX_DEFAULT_TOOLBAR_STYLE,
    UINT nID = AFX_IDW_MENUBAR);

Parámetros

pParentWnd
[in] Puntero a la ventana primaria del nuevo objeto CMFCMenuBar.

dwStyle
[in] Estilo de la nueva barra de menús.

Nid
[in] Identificador de la ventana secundaria de la barra de menús.

Valor devuelto

TRUE si es correcto; en caso contrario, FALSE.

Comentarios

Después de construir un objeto CMFCMenuBar, debe llamar a Create. Este método crea el control CMFCMenuBar y lo adjunta al objeto CMFCMenuBar.

Para obtener más información sobre los estilos de barra de herramientas, vea CBasePane::SetPaneStyle.

CMFCMenuBar::CreateEx

Crea un objeto CMFCMenuBar con estilos extendidos especificados.

virtual BOOL CreateEx(
    CWnd* pParentWnd,
    DWORD dwCtrlStyle = TBSTYLE_FLAT,
    DWORD dwStyle = AFX_DEFAULT_TOOLBAR_STYLE,
    CRect rcBorders = CRect(1,
    1,
    1,
    1),
    UINT nID =AFX_IDW_MENUBAR);

Parámetros

pParentWnd
[in] Puntero a la ventana primaria del nuevo objeto CMFCMenuBar.

dwCtrlStyle
[in] Estilos adicionales para la nueva barra de menús.

dwStyle
[in] Estilo principal de la nueva barra de menús.

rcBorders
[in] Parámetro CRect que especifica los tamaños de los bordes del objeto CMFCMenuBar.

Nid
[in] Identificador de la ventana secundaria de la barra de menús.

Valor devuelto

Distinto de cero si el método es correcto; en caso contrario, 0.

Comentarios

Debe usar esta función en lugar de CMFCMenuBar::Create cuando desee especificar estilos además del estilo de la barra de herramientas. Algunos estilos adicionales usados con frecuencia son TBSTYLE_TRANSPARENT y CBRS_TOP.

Para obtener listas de estilos adicionales, vea Estilos de control y botón de la barra de herramientas, estilos de control comunes y estilos de ventana comunes.

Ejemplo

En el siguiente ejemplo se muestra cómo se utiliza el método CreateEx de la clase CMFCMenuBar. Este fragmento de código forma parte del ejemplo de demostración de IE.

CMFCMenuBar m_wndMenuBar;
// The this pointer points to CMainFrame class which extends the CFrameWnd class.
if (!m_wndMenuBar.CreateEx(this, TBSTYLE_TRANSPARENT))
{
   TRACE0("Failed to create menubar\n");
   return -1; // fail to create
}

CMFCMenuBar::CreateFromMenu

Inicializa un objeto CMFCMenuBar . Este método modela el objeto CMFCMenuBar después de un parámetro HMENU.

virtual void CreateFromMenu(
    HMENU hMenu,
    BOOL bDefaultMenu = FALSE,
    BOOL bForceUpdate = FALSE);

Parámetros

hMenu
[in] Identificador de un recurso de menú. CreateFromMenu usa este recurso como plantilla para CMFCMenuBar.

bDefaultMenu
[in] Valor booleano que indica si el nuevo menú es el predeterminado.

bForceUpdate
[in] Valor booleano que indica si este método fuerza una actualización del menú.

Comentarios

Use este método si desea que un control de menú tenga los mismos elementos de menú que un recurso de menú. Se llama a este método después de llamar a CMFCMenuBar::Create o CMFCMenuBar::CreateEx.

CMFCMenuBar::EnableHelpCombobox

Habilita un cuadro combinado Ayuda que se encuentra en el lado derecho de la barra de menús.

void EnableHelpCombobox(
    UINT uiID,
    LPCTSTR lpszPrompt = NULL,
    int nComboBoxWidth = 150);

Parámetros

uiID
[in] Identificador de comando del botón del cuadro combinado Ayuda .

lpszPrompt
[in] Cadena que contiene el texto que el marco muestra en el cuadro combinado si está vacío y no está activo. Por ejemplo, "Escriba el texto aquí".

nComboBoxWidth
[in] Ancho del botón del cuadro combinado en píxeles.

Comentarios

El cuadro combinado Ayuda es similar al cuadro combinado Ayuda de la barra de menús de Microsoft Word.

Cuando se llama a este método con uiID establecido en 0, este método oculta el cuadro combinado. De lo contrario, este método muestra automáticamente el cuadro combinado en el lado derecho de la barra de menús. Después de llamar a este método, llame a CMFCMenuBar::GetHelpCombobox para obtener un puntero al objeto CMFCToolBarComboBoxButton insertado.

CMFCMenuBar::EnableMenuShadows

Habilita sombras para menús emergentes.

static void EnableMenuShadows(BOOL bEnable = TRUE);

Parámetros

bEnable
[in] Parámetro booleano que indica si las sombras deben habilitarse para los menús emergentes.

Comentarios

El algoritmo que usa este método es complejo y puede reducir el rendimiento de la aplicación en sistemas más lentos.

CMFCMenuBar::GetAvailableExpandSize

virtual int GetAvailableExpandSize() const;

Valor devuelto

Comentarios

CMFCMenuBar::GetColumnWidth

virtual int GetColumnWidth() const;

Valor devuelto

Comentarios

CMFCMenuBar::GetDefaultMenu

Recupera un identificador en el menú original. El marco carga el menú original desde el archivo de recursos.

HMENU GetDefaultMenu() const;

Valor devuelto

Identificador de un recurso de menú.

Comentarios

Si la aplicación personaliza un menú, puede usar este método para recuperar un identificador en el menú original.

CMFCMenuBar::GetDefaultMenuResId

Recupera el identificador de recursos del menú predeterminado.

UINT GetDefaultMenuResId() const;

Valor devuelto

Un id. de recurso de menú.

Comentarios

El marco carga el menú predeterminado para el objeto CMFCMenuBar desde el archivo de recursos.

CMFCMenuBar::GetFloatPopupDirection

int GetFloatPopupDirection(CMFCToolBarMenuButton* pButton);

Parámetros

[in] pButton

Valor devuelto

Comentarios

CMFCMenuBar::GetForceDownArrows

BOOL GetForceDownArrows();

Valor devuelto

Comentarios

CMFCMenuBar::GetHelpCombobox

Devuelve un puntero al cuadro combinado Ayuda .

CMFCToolBarComboBoxButton* GetHelpCombobox();

Valor devuelto

Un puntero al cuadro combinado Ayuda . NULL si el cuadro combinado Ayuda está oculto o no está habilitado.

Comentarios

El cuadro combinado Ayuda se encuentra en el lado derecho de la barra de menús. Llame al método CMFCMenuBar::EnableHelpCombobox para habilitar este cuadro combinado.

CMFCMenuBar::GetHMenu

Recupera el identificador del menú adjunto al objeto CMFCMenuBar .

HMENU GetHMenu() const;

CMFCMenuBar::GetMenuFont

Recupera la fuente de menú actual.

static const CFont& GetMenuFont(BOOL bHorz = TRUE);

Parámetros

bHorz
[in] Parámetro booleano que especifica si se va a devolver la fuente horizontal o vertical. TRUE indica la fuente horizontal.

Valor devuelto

Puntero a un parámetro CFont que contiene la fuente de la barra de menús actual.

Comentarios

La fuente devuelta es un parámetro global para la aplicación. Se mantienen dos fuentes globales para todos los objetos CMFCMenuBar. Estas fuentes independientes se usan para barras de menús horizontales y verticales.

CMFCMenuBar::GetMenuItem

Recupera un objeto CMFCToolBarButton en una barra de menús basada en el índice del elemento.

CMFCToolBarButton* GetMenuItem(int iItem) const;

Parámetros

iItem
[in] Índice del elemento de menú que se va a devolver.

Valor devuelto

Un puntero al objeto CMFCToolBarButton que coincide con el índice especificado por iItem. NULL si el índice no es válido.

CMFCMenuBar::GetRowHeight

virtual int GetRowHeight() const;

Valor devuelto

Comentarios

CMFCMenuBar::GetSystemButton

CMFCToolBarMenuButtonsButton* GetSystemButton(
    UINT uiBtn,
    BOOL bByCommand = TRUE) const;

Parámetros

[in] uiBtn

[in] bByCommand

Valor devuelto

Comentarios

CMFCMenuBar::GetSystemButtonsCount

int GetSystemButtonsCount() const;

Valor devuelto

Comentarios

CMFCMenuBar::GetSystemMenu

CMFCToolBarSystemMenuButton* GetSystemMenu() const;

Valor devuelto

Comentarios

CMFCMenuBar::HighlightDisabledItems

Controla si el marco resalta los elementos de menú deshabilitados.

static void HighlightDisabledItems(BOOL bHighlight = TRUE);

Parámetros

bHighlight
[in] Parámetro booleano que indica si el marco resalta elementos de menú no disponibles.

Comentarios

De forma predeterminada, el marco no resalta los elementos de menú no disponibles cuando el usuario coloca el puntero del mouse sobre ellos.

CMFCMenuBar::IsButtonExtraSizeAvailable

virtual BOOL IsButtonExtraSizeAvailable() const;

Valor devuelto

Comentarios

CMFCMenuBar::IsHighlightDisabledItems

Indica si el marco resalta los elementos de menú no disponibles.

static BOOL IsHighlightDisabledItems();

Valor devuelto

TRUE si los elementos de menú no disponibles están resaltados; en caso contrario, FALSE.

Comentarios

De forma predeterminada, el marco no resalta los elementos de menú no disponibles cuando el usuario coloca el puntero del mouse sobre ellos. Use el método CMFCMenuBar::HighlightDisabledItems para habilitar esta característica.

CMFCMenuBar::IsMenuShadows

Indica si el marco dibuja sombras para los menús emergentes.

static BOOL IsMenuShadows();

Valor devuelto

TRUE si el marco dibuja sombras de menús; en caso contrario, FALSE.

Comentarios

Use el método CMFCMenuBar::EnableMenuShadows para habilitar o deshabilitar esta característica.

CMFCMenuBar::IsRecentlyUsedMenus

Indica si los comandos de menú usados recientemente se muestran en la barra de menús.

static BOOL IsRecentlyUsedMenus();

Valor devuelto

Distinto de cero si el objeto CMFCMenuBar muestra comandos de menú usados recientemente; en caso contrario, 0.

Comentarios

Use la función CMFCMenuBar::SetRecentlyUsedMenus para controlar si la barra de menús muestra comandos de menú usados recientemente.

CMFCMenuBar::IsShowAllCommands

Indica si los menús muestran todos los comandos.

static BOOL IsShowAllCommands();

Valor devuelto

Distinto de cero si CMFCMenuBar muestra todos los comandos; en caso contrario, 0.

Comentarios

Un objeto CMFCMenuBar se puede configurar para mostrar todos los comandos o mostrar solo un subconjunto de comandos. Para más información sobre esta característica, vea CMFCMenuBar (clase).

IsShowAllCommands le indicará cómo se configura esta característica para el objeto CMFCMenuBar. Para controlar qué comandos de menú se muestran, use los métodos CMFCMenuBar::SetShowAllCommands y CMFCMenuBar::SetRecentlyUsedMenus.

CMFCMenuBar::IsShowAllCommandsDelay

Indica si el objeto CMFCMenuBar muestra todos los comandos después de un breve retraso.

static BOOL IsShowAllCommandsDelay();

Valor devuelto

Distinto de cero si la barra de menús muestra menús completos después de un breve retraso; de lo contrario, 0.

Comentarios

Al configurar una barra de menús para mostrar elementos usados recientemente, la barra de menús muestra el menú completo de una de estas dos maneras:

  • Muestra el menú completo después de un retraso programado desde el momento en que el usuario mantiene el cursor sobre la flecha situada en la parte inferior del menú.

  • Muestra el menú completo después de que el usuario haga clic en la flecha situada en la parte inferior del menú.

De forma predeterminada, todos los objetos CMFCMenuBar usan la opción para mostrar el menú completo después de un breve retraso. Esta opción no se puede cambiar con programación en la clase CMFCMenuBar. Sin embargo, un usuario puede cambiar el comportamiento durante la personalización de la barra de herramientas mediante el cuadro de diálogo Personalizar .

CMFCMenuBar::LoadState

Carga el estado de la barra de menús desde el Registro de Windows.

virtual BOOL LoadState(
    LPCTSTR lpszProfileName = NULL,
    int nIndex = -1,
    UINT uiID = (UINT)-1);

Parámetros

lpszProfileName
[in] Cadena que contiene la ruta de acceso de una clave del Registro de Windows.

nIndex
[in] Identificador de control de la barra de menús.

uiID
[in] Valor reservado.

Valor devuelto

TRUE si el método se aplicó correctamente; de lo contrario, FALSE.

Comentarios

Use el método CMFCMenuBar::SaveState para guardar el estado de la barra de menús en el Registro. La información guardada incluye los elementos de menú, el estado de acoplamiento y la posición de la barra de menús.

En la mayoría de los casos, la aplicación no llama a LoadState. El marco llama a este método cuando inicializa el área de trabajo.

CMFCMenuBar::OnChangeHot

virtual void OnChangeHot(int iHot);

Parámetros

[in] iHot

Comentarios

CMFCMenuBar::OnDefaultMenuLoaded

El marco llama a este método cuando carga el recurso de menú desde el archivo de recursos.

virtual void OnDefaultMenuLoaded(HMENU hMenu);

Parámetros

hMenu
[in] Identificador del menú asociado al objeto CMFCMenuBar.

Comentarios

La implementación predeterminada de esta función no hace nada. Invalide esta función para ejecutar código personalizado después de que el marco cargue un recurso de menú desde el archivo de recursos.

CMFCMenuBar::OnSendCommand

virtual BOOL OnSendCommand(const CMFCToolBarButton* pButton);

Parámetros

[in] pButton

Valor devuelto

Comentarios

CMFCMenuBar::OnSetDefaultButtonText

El marco llama a este método cuando el usuario cambia el texto de un elemento en la barra de menús.

virtual BOOL OnSetDefaultButtonText(CMFCToolBarButton* pButton);

Parámetros

pButton
[in] Puntero al objeto CMFCToolBarButton que el usuario quiere personalizar.

Valor devuelto

TRUE si el marco aplica los cambios del usuario a la barra de menús; en caso contrario, FALSE.

Comentarios

La implementación predeterminada de este método cambia el texto del botón al texto que proporciona el usuario.

CMFCMenuBar::OnToolHitTest

virtual INT_PTR OnToolHitTest(
    CPoint point,
    TOOLINFO* pTI) const;

Parámetros

[in] point

[in] pTI

Valor devuelto

Comentarios

CMFCMenuBar::PreTranslateMessage

virtual BOOL PreTranslateMessage(MSG* pMsg);

Parámetros

[in] pMsg

Valor devuelto

Comentarios

CMFCMenuBar::RestoreOriginalstate

El marco llama a este elemento cuando el usuario selecciona Restablecer en el cuadro de diálogo Personalizar .

virtual BOOL RestoreOriginalstate();

Valor devuelto

Distinto de cero si el método es correcto; en caso contrario, 0.

Comentarios

Se llama a este método cuando el usuario selecciona Restablecer en el menú de personalización. También puede llamar manualmente a este método para restablecer mediante programación el estado de la barra de menús. El marco carga el menú original desde el archivo de recursos.

Invalide este método si desea realizar cualquier procesamiento cuando el usuario seleccione la opción Restablecer .

CMFCMenuBar::SaveState

Guarda el estado del objeto CMFCMenuBar en el Registro de Windows.

virtual BOOL SaveState (
    LPCTSTR lpszProfileName = NULL,
    int nIndex = -1,
    UINT uiID = (UINT)-1);

Parámetros

lpszProfileName
[in] Cadena que contiene la ruta de acceso de una clave del Registro de Windows.

nIndex
[in] Identificador de control de la barra de menús.

uiID
[in] Valor reservado.

Valor devuelto

TRUE si es correcto; en caso contrario, FALSE.

Comentarios

Normalmente, la aplicación no llama a SaveState. El marco llama a este método cuando se serializa el área de trabajo. Para obtener más información, vea CWinAppEx::SaveState.

La información guardada incluye los elementos de menú, el estado de acoplamiento y la posición de la barra de menús.

CMFCMenuBar::SetDefaultMenuResId

Establece el menú predeterminado para un objeto CMFCMenuBar basado en el identificador de recurso.

void SetDefaultMenuResId(UINT uiResId);

Parámetros

uiResId
[in] Identificador de recurso del nuevo menú predeterminado.

Comentarios

El método CMFCMenuBar::RestoreOriginalstate restaura el menú predeterminado desde el archivo de recursos.

Use el método CMFCMenuBar::GetDefaultMenuResId para recuperar el menú predeterminado sin restaurarlo.

CMFCMenuBar::SetForceDownArrows

void SetForceDownArrows(BOOL bValue);

Parámetros

[in] bValue

Comentarios

CMFCMenuBar::SetMaximizeMode

El marco llama a este método cuando un MDI cambia su modo de presentación y se debe actualizar la barra de menús.

void SetMaximizeMode(
    BOOL bMax,
    CWnd* pWnd = NULL,
    BOOL bRecalcLayout = TRUE);

Parámetros

bMax
[in] Valor booleano que especifica el modo. Para obtener más información, consulte la sección Comentarios.

pWnd
[in] Puntero a la ventana secundaria MDI que está cambiando.

bRecalcLayout
[in] Valor booleano que especifica si el diseño de la barra de menús se debe volver a calcular inmediatamente.

Comentarios

Cuando se maximiza una ventana secundaria MDI, una barra de menús adjunta a la ventana marco principal de MDI muestra el menú del sistema y los botones Minimizar, Maximizar y Cerrar . Si bMax es TRUE y pWnd no es NULL, la ventana secundaria MDI se maximiza y la barra de menús debe incorporar los controles adicionales. De lo contrario, la barra de menús vuelve a su estado normal.

CMFCMenuBar::SetMenuButtonRTC

Establece la información de la clase en tiempo de ejecución que usa el marco cuando el usuario crea botones de menú.

void SetMenuButtonRTC(CRuntimeClass* pMenuButtonRTC);

Parámetros

pMenuButtonRTC
[in] Información de CRuntimeClass para una clase derivada de CMFCMenuButton (clase).

Comentarios

Cuando un usuario agrega nuevos botones a la barra de menús, el marco crea dinámicamente los botones. De forma predeterminada, crea objetos CMFCMenuButton. Invalide este método para cambiar el tipo de objetos de botón que crea el marco de trabajo.

CMFCMenuBar::SetMenuFont

Establece la fuente de todas las barras de menú de la aplicación.

static BOOL SetMenuFont(
    LPLOGFONT lpLogFont,
    BOOL bHorz = TRUE);

Parámetros

lpLogFont
[in] Puntero a una estructura LOGFONT que define la fuente que se va a establecer.

bHorz
[in] TRUE si desea que el parámetro lpLogFont se use para la fuente vertical, FALSE si desea que se use para la fuente horizontal.

Valor devuelto

TRUE si el método se aplicó correctamente; de lo contrario, FALSE.

Comentarios

Se usan dos fuentes para todos los objetos CMFCMenuBar. Estas fuentes independientes se usan para barras de menús horizontales y verticales.

La configuración de fuente son variables globales y afectan a todos los objetos CMFCMenuBar.

CMFCMenuBar::SetRecentlyUsedMenus

Controla si una barra de menús muestra comandos de menú usados recientemente.

static void SetRecentlyUsedMenus (BOOL bOn = TRUE);

Parámetros

bOn
[in] Valor booleano que controla si se muestran los comandos de menú usados recientemente.

CMFCMenuBar::SetShowAllCommands

Controla si un menú muestra todos los comandos disponibles.

static void SetShowAllCommands(BOOL bShowAllCommands = TRUE);

Parámetros

bShowAllCommands
[in] Parámetro booleano que especifica si el menú emergente muestra todos los comandos de menú.

Comentarios

Si un menú no muestra todos los comandos de menú, oculta los comandos que rara vez se usan. Para obtener más información sobre cómo mostrar comandos de menú, vea CMFCMenuBar (clase).

Consulte también

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