winuser.h

Estructura MENUEX_TEMPLATE_ITEM

Definición

// typedef struct {  
//     DWORD  dwType; 
//     DWORD  dwState; 
//     UINT   uId; 
//     WORD   bResInfo; 
//     WCHAR  szText[1]; 
//     // DWORD dwHelpId; 
// } MENUEX_TEMPLATE_ITEM;

La estructura MENUEX_TEMPLATE_ITEM define un ítem de menú en una plantilla de menú extendida. La definición de la estructura que se proporciona aquí es sólo como explicación; no está presente en ningún fichero de cabecera.

Descripción

dwType: tipo de ítem de menú. Este miembro puede ser una combinación de los valores de tipo (que empiezan con MFT) listados con la estructura MENUITEMINFO.

dwState: estado del ítem de menú. Este miembro puede ser una combinación de los valores de estado (que empiezan con MFS) listados con la estructura MENUITEMINFO.

uId: identificador de menú. Este es un valor definido por la aplicación de 16 bits que identifica el ítem de menú. En un recurso de menú extendido, tanto los ítems que abren un menús desplegables o submenús, como los ítems de comando pueden tener identificadores.

bResInfo: valor que especifica si el ítem de menú es el último ítem de una barra de menú, de un menú desplegable, submenú o un menú de atajo y si abre un menú desplegable o submenú. Este miembro puede ser cero o más de los siguientes valores:

Valor Significado
0x80 La estructura define el último ítem de una barra de menú, un menú desplegable, un submenú o un menú de atajo.
0x01 La estructura define un ítem que abre un menú desplegable o un submenú. Las estructuras subsiguientes definen los ítems de menú correspondientes al menú desplegable o submenú.

Para aplicaciones de 32 bits, este miembro es un WORD; para aplicaciones de 16 bits, es un BYTE.

szText: texto del ítem de menú. Este miembro, que es una cadena Unicode terminada en nulo, se alinea según palabras en memoria. El tamaño de la definición del ítem de menú varia dependiendo de la longitud de esta cadena.

dwHelpId: identificador de ayuda para el menú desplegable o submenú. Este miembro, que se incluye sólo para ítems que abren menús desplegables o submenús, se coloca en la primer hueco de dobe palabra que siga al miembro de longitud variable szText.

Observaciones

Una plantilla de menú extendida consiste en una estructura MENUEX_TEMPLATE_HEADER seguida por una o más estructuras MENUEX_TEMPLATE_ITEM contiguas. Las estructuras MENUEX_TEMPLATE_ITEM, que son de longitud variable, están alineadas en dobles palabras. Para crear un menú a partir de una plantilla de menú extendida en memoria, usar la función LoadMenuIndirect.