Estructura MENUITEMINFOA (winuser.h)
Contiene información sobre un elemento de menú.
Sintaxis
typedef struct tagMENUITEMINFOA {
UINT cbSize;
UINT fMask;
UINT fType;
UINT fState;
UINT wID;
HMENU hSubMenu;
HBITMAP hbmpChecked;
HBITMAP hbmpUnchecked;
ULONG_PTR dwItemData;
LPSTR dwTypeData;
UINT cch;
HBITMAP hbmpItem;
} MENUITEMINFOA, *LPMENUITEMINFOA;
Miembros
cbSize
Tipo: UINT
El tamaño de la estructura en bytes. El autor de la llamada debe establecer este miembro en sizeof(MENUITEMINFO)
.
fMask
Tipo: UINT
Indica los miembros que se van a recuperar o establecer. Este miembro puede ser uno o varios de los valores siguientes.
fType
Tipo: UINT
Tipo de elemento de menú. Este miembro puede ser uno o varios de los valores siguientes.
Los valores MFT_BITMAP, MFT_SEPARATOR y MFT_STRING no se pueden combinar entre sí. Establezca fMasken MIIM_TYPE para usar fType.
fType solo se usa si fMask tiene un valor de MIIM_FTYPE.
Valor | Significado |
---|---|
|
Muestra el elemento de menú mediante un mapa de bits. La palabra de orden bajo del miembro dwTypeData es el identificador de mapa de bits y se omite el miembro cch .
MFT_BITMAP se reemplaza por MIIM_BITMAP y hbmpItem. |
|
Places el elemento de menú en una nueva línea (para una barra de menús) o en una nueva columna (para un menú desplegable, submenú o menú contextual). Para un menú desplegable, submenú o menú contextual, una línea vertical separa la nueva columna de la antigua. |
|
Places el elemento de menú en una nueva línea (para una barra de menús) o en una nueva columna (para un menú desplegable, submenú o menú contextual). Para un menú desplegable, submenú o menú contextual, las columnas no están separadas por una línea vertical. |
|
Asigna la responsabilidad de dibujar el elemento de menú en la ventana propietaria del menú. La ventana recibe un mensaje de WM_MEASUREITEM antes de que se muestre el menú por primera vez y un mensaje WM_DRAWITEM cada vez que se deba actualizar la apariencia del elemento de menú. Si se especifica este valor, el miembro dwTypeData contiene un valor definido por la aplicación. |
|
Muestra los elementos de menú seleccionados mediante una marca de botón de radio en lugar de una marca de verificación si el miembro hbmpChecked es NULL. |
|
Justifica con el botón derecho el elemento de menú y los elementos posteriores. Este valor solo es válido si el elemento de menú está en una barra de menús. |
|
Especifica que los menús en cascada de derecha a izquierda (el valor predeterminado es de izquierda a derecha). Se usa para admitir idiomas de derecha a izquierda, como árabe y hebreo. |
|
Especifica que el elemento de menú es un separador. Un separador de elementos de menú aparece como una línea divisora horizontal. Se omiten los miembros dwTypeData y cch . Este valor solo es válido en un menú desplegable, submenú o menú contextual. |
|
Muestra el elemento de menú mediante una cadena de texto. El miembro dwTypeData es el puntero a una cadena terminada en null y el miembro cch es la longitud de la cadena.
MFT_STRING se reemplaza por MIIM_STRING. |
fState
Tipo: UINT
Estado del elemento de menú. Este miembro puede ser uno o varios de estos valores. Establezca fMasken MIIM_STATE para usar fState.
wID
Tipo: UINT
Valor definido por la aplicación que identifica el elemento de menú. Establezca fMasken MIIM_ID para usar wID.
hSubMenu
Tipo: HMENU
Identificador del menú desplegable o submenú asociado al elemento de menú. Si el elemento de menú no es un elemento que abre un menú desplegable o submenú, este miembro es NULL. Establezca fMasken MIIM_SUBMENU para usar hSubMenu.
hbmpChecked
Tipo: HBITMAP
Identificador del mapa de bits que se mostrará junto al elemento si está seleccionado. Si este miembro es NULL, se usa un mapa de bits predeterminado. Si se especifica el valor de tipo MFT_RADIOCHECK , el mapa de bits predeterminado es una viñeta. De lo contrario, es una marca de verificación. Establezca fMasken MIIM_CHECKMARKS para usar hbmpChecked.
hbmpUnchecked
Tipo: HBITMAP
Identificador del mapa de bits que se mostrará junto al elemento si no está seleccionado. Si este miembro es NULL, no se usa ningún mapa de bits. Establezca fMasken MIIM_CHECKMARKS para usar hbmpUnchecked.
dwItemData
Tipo: ULONG_PTR
Valor definido por la aplicación asociado al elemento de menú. Establezca fMasken MIIM_DATA para usar dwItemData.
dwTypeData
Tipo: LPTSTR
Contenido del elemento de menú. El significado de este miembro depende del valor de fType y solo se usa si la marca MIIM_TYPE se establece en el miembro fMask .
Para recuperar un elemento de menú de tipo MFT_STRING, primero busque el tamaño de la cadena estableciendo el miembro dwTypeData de MENUITEMINFO en NULL y, a continuación, llamando a GetMenuItemInfo. El valor de cch+1 es el tamaño necesario. A continuación, asigne un búfer de este tamaño, coloque el puntero al búfer en dwTypeData, incremente cch y llame a GetMenuItemInfo una vez más para rellenar el búfer con la cadena. Si el elemento de menú recuperado es de algún otro tipo, GetMenuItemInfo establece el miembro dwTypeData en un valor cuyo tipo especifica el miembro fType .
Cuando se usa con la función SetMenuItemInfo , este miembro debe contener un valor cuyo tipo especifica el miembro fType .
dwTypeData solo se usa si la marca MIIM_STRING está establecida en el miembro fMask
cch
Tipo: UINT
Longitud del texto del elemento de menú, en caracteres, cuando se recibe información sobre un elemento de menú del tipo MFT_STRING . Sin embargo, cch solo se usa si la marca MIIM_TYPE se establece en el miembro fMask y es cero de lo contrario. Además, cch se omite cuando el contenido de un elemento de menú se establece mediante una llamada a SetMenuItemInfo.
Tenga en cuenta que, antes de llamar a GetMenuItemInfo, la aplicación debe establecer cch en la longitud del búfer al que apunta el miembro dwTypeData . Si el elemento de menú recuperado es de tipo MFT_STRING (como se indica en el miembro fType ), GetMenuItemInfo cambia cch a la longitud del texto del elemento de menú. Si el elemento de menú recuperado es de algún otro tipo, GetMenuItemInfo establece el campo cch en cero.
El miembro cch se usa cuando la marca MIIM_STRING se establece en el miembro fMask .
hbmpItem
Tipo: HBITMAP
Identificador del mapa de bits que se va a mostrar o puede ser uno de los valores de la tabla siguiente. Se usa cuando la marca MIIM_BITMAP se establece en el miembro fMask .
Valor | Significado |
---|---|
|
Mapa de bits dibujado por la ventana que posee el menú. La aplicación debe procesar los mensajes WM_MEASUREITEM y WM_DRAWITEM . |
|
Botón Cerrar de la barra de menús. |
|
Botón Cerrar deshabilitado para la barra de menús. |
|
Minimice el botón de la barra de menús. |
|
Deshabilitado el botón minimizar para la barra de menús. |
|
Botón Restaurar de la barra de menús. |
|
Cierre el botón del submenú. |
|
Botón Maximizar para el submenú. |
|
Minimice el botón del submenú. |
|
Botón Restaurar del submenú. |
|
Icono de Windows o icono de la ventana especificada en dwItemData. |
Comentarios
La estructura MENUITEMINFO se usa con las funciones GetMenuItemInfo, InsertMenuItem y SetMenuItemInfo .
El menú puede mostrar elementos mediante texto, mapas de bits o ambos.
Nota
El encabezado winuser.h define MENUITEMINFO como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Encabezado | winuser.h (incluya Windows.h) |
Consulte también
Conceptual
Referencia