Prev Next

MENUEX_TEMPLATE_ITEM info  Overview  Group

The MENUEX_TEMPLATE_ITEM structure defines a menu item in an extended menu template. The structure definition given here is for explanation only; it is not present in any standard header file.

// typedef struct { 

//     DWORD  dwType; 

//     DWORD  dwState; 

//     UINT   uId; 

//     WORD   bResInfo; 

//     WCHAR  szText[1]; 

//     // DWORD dwHelpId; 

// } MENUEX_TEMPLATE_ITEM; 

 

Members

dwType
Menu item type. This member can be a combination of the type (beginning with MFT) values listed with the MENUITEMINFO structure.
dwState
Menu item state. This member can be a combination of the state (beginning with MFS) values listed with the MENUITEMINFO structure.
uId
Menu item identifier. This is an application-defined 16-bit value that identifies the menu item. In an extended menu resource, items that open drop-down menus or submenus as well as command items can have identifiers.
bResInfo
Value specifying whether the menu item is the last item in the menu bar, drop-down menu, submenu, or shortcut menu and whether it is an item that opens a drop-down menu or submenu. This member can be zero or more of these values:

Value

Meaning

0x80

The structure defines the last menu item in the menu bar, drop-down menu, submenu, or shortcut menu.

0x01

The structure defines a item that opens a drop-down menu or submenu. Subsequent structures define menu items in the corresponding drop-down menu or submenu.

For 32-bit applications, this member is a WORD; for 16-bit applications, it is a BYTE.

szText
Menu item text. This member, which is a null-terminated Unicode string, is aligned on a word boundary. The size of the menu item definition varies depending on the length of this string.
dwHelpId
Help identifier for a drop-down menu or submenu. This member, which is included only for items that open drop-down menus or submenus, is located at the first doubleword boundary following the variable-length szText member.

Remarks

An extended menu template consists of a MENUEX_TEMPLATE_HEADER structure followed by one or more contiguous MENUEX_TEMPLATE_ITEM structures. The MENUEX_TEMPLATE_ITEM structures, which are variable in length, are aligned on doubleword boundaries. To create a menu from an extended menu template in memory, use the LoadMenuIndirect function.

See Also

LoadMenuIndirect, MENUEX_TEMPLATE_HEADER, MENUITEMINFO