SetMenuItemBitmaps

The SetMenuItemBitmaps function associates the specified bitmap with a menu item. Whether the menu item is checked or unchecked, Windows displays the appropriate bitmap next to the menu item.

BOOL SetMenuItemBitmaps(

HMENU hMenu, // handle of menu
UINT uPosition, // menu item to receive new bitmaps
UINT uFlags, // menu item flags
HBITMAP hBitmapUnchecked, // handle of unchecked bitmap
HBITMAP hBitmapChecked // handle of checked bitmap
);  

Parameters

hMenu

Identifies the menu containing the item to receive new check mark bitmaps.

uPosition

Specifies the menu item to be changed, as determined by the uFlags parameter.

uFlags

Specifies how the uPosition parameter is interpreted. The uFlags parameter must be one of the following values:

Value Meaning
MF_BYCOMMAND Indicates that uPosition gives the identifier of the menu item. If neither MF_BYCOMMAND nor MF_BYPOSITION is specified, MF_BYCOMMAND is the default flag.
MF_BYPOSITION Indicates that uPosition gives the zero-based relative position of the menu item.

hBitmapUnchecked

Identifies the bitmap displayed when the menu item is not checked.

hBitmapChecked

Identifies the bitmap displayed when the menu item is checked.

Return Values

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks

If either the hBitmapUnchecked or hBitmapChecked parameter is NULL, Windows displays nothing next to the menu item for the corresponding check state. If both parameters are NULL, Windows displays the default check mark bitmap when the item is checked and removes the bitmap when the item is not checked.

When the menu is destroyed, these bitmaps are not destroyed; it is up to the application to destroy them.

Windows NT: The GetMenuCheckMarkDimensions function retrieves the dimensions of the default check mark used for menu items. These values are used to determine the appropriate size for the bitmaps supplied with this function.

Windows 95: GetMenuCheckMarkDimensions is obsolete. Use GetsystemMetrics with the CXMENUCHECK and CYMENUCHECK values to retrieve the bitmap dimensions.

See Also

GetMenu, GetMenuCheckMarkDimensions