CMenu::ModifyMenu

BOOL ModifyMenu ( UINT nPosition, UINT nFlags, UINT nIDNewItem = 0, LPCTSTR lpszNewItem = NULL );

BOOL ModifyMenu ( UINT nPosition, UINT nFlags, UINT nIDNewItem, const CBitmap * pBmp );

Valor devuelto

Distinto de cero si la función es correcta; caso contrario 0.

Parámetros

nPosition

Especifica el elemento de menú para cambiarse. El parámetro nFlags puede utilizarse para interpretar nPosition de las siguientes maneras:

nFlags Interpretación de nPosition
MF_BYCOMMAND Especifica que el parámetro da el comando ID del elemento de menú existente. Esta es la opción predeterminada si se establece ni MF_BYCOMMAND ni MF_BYPOSITION.
MF_BYPOSITION Especifica que el parámetro da la posición del elemento de menú existente. El primer elemento está en la posición 0.

nFlags

Especifica cómo se interpreta nPosition y da información acerca de las modificaciones que deban introducirse en el elemento de menú. Para obtener una lista de indicadores que se pueden establecer, vea la función de miembro de AppendMenu.

nIDNewItem

Especifica el identificador de comando del elemento de menú modificados o, si nFlags se establece en MF_POPUP, el identificador (HMENU) del menú de un menú emergente. El parámetro nIDNewItem se omite (no necesaria) si nFlags se establece en MF_SEPARATOR.

lpszNewItem

Especifica el contenido del elemento de menú nuevo. El parámetro nFlags puede utilizarse para interpretar lpszNewItem de las siguientes maneras:

nFlags Interpretación de lpszNewItem
MF_OWNERDRAW Contiene un valor de 32 bits suministrados de aplicación que la aplicación puede utilizar para mantener información adicional asociada al elemento de menú. Este valor de 32 bits está disponible para la aplicación cuando procesa MF_MEASUREITEM y MF_DRAWITEM.
MF_STRING Contiene un largo puntero a una cadena terminada en null o a una CString.
MF_SEPARATOR Se omite el parámetro lpszNewItem (no es necesario).

pBmp

Apunta a un objeto CBitmap que se utilizará como el elemento de menú.

Observaciones

Cambia un elemento de menú existente en la posición especificada por nPosition. La aplicación especifica el nuevo estado del elemento de menú estableciendo valores en nFlags. Si esta función reemplaza un menú emergente asociado con el elemento de menú, destruye el viejo menú emergente y libera la memoria utilizada por el menú emergente.

NIDNewItem especifica un menú emergente, se convierte en parte del menú en el que se inserta. Si se destruye ese menú, también se destruirán el menú Insertar. Un menú insertado debe separa de un objeto CMenu para evitar conflictos.

Cuando se cambia un menú que reside en una ventana (o no se muestra la ventana), la aplicación debe llamar a CWnd::DrawMenuBar. Para cambiar los atributos de los elementos de menú existentes, es mucho más rápido que utilizar las funciones miembro CheckMenuItem y EnableMenuItem.

Introducción a CMenu |nbsp; Miembros de clase | Diagrama de jerarquía

Vea tambiénnbsp;CMenu::AppendMenu, CMenu::InsertMenu, CMenu::CheckMenuItem, CWnd::DrawMenuBar, CMenu::EnableMenuItem, CMenu::SetMenuItemBitmaps, CMenu::Detach, :: ModifyMenu

Index