InsertMenu (Compact 2013)

3/28/2014

This function inserts a new menu item into a menu, moving other items down the menu.

Syntax

BOOL InsertMenu(
  HMENU hMenu, 
  UINT uPosition, 
  UINT uFlags, 
  UINT uIDNewItem, 
  LPCTSTR lpNewItem 
); 

Parameters

  • hMenu
    [in] Handle to the menu to be changed.
  • uPosition
    [in] The menu item before which the new menu item is to be inserted, as determined by the uFlags parameter. If uPosition is 0xFFFFFFFF, the new menu item is appended to the end of the menu.
  • uFlags
    [in] Specifies flags to control the interpretation of the uPosition parameter and the content, appearance, and behavior of the new menu item. This parameter must be a combination of one of the required constants MF_BYCOMMAND or MF_BYPOSITION and at least one of the other constants listed in Menus Constants.

    If this parameter includes the MF_SEPARATOR constant, InsertMenu ignores the values of the lpNewItem and uIDNewItem parameters. If this parameter includes the MF_STRING constant, the lpNewItem parameter points to the string.

  • uIDNewItem
    [in] Either the identifier of the new menu item or, if the uFlags parameter has the MF_POPUP constant set, the handle to the drop-down menu or submenu.
  • lpNewItem
    [in] Long pointer to the content of the new menu item. If uFlags includes the MF_STRING constant, lpNewItem points to a null-terminated string (the default). If uFlags includes the MF_OWNERDRAW constant, lpNewItem points to a 32-bit value that can be used to maintain additional data related to the menu item.

Return Value

Nonzero indicates success. Zero indicates failure. To get extended error information, call GetLastError.

Remarks

The application must call the DrawMenuBar function whenever a menu changes, whether or not the menu is in a displayed window.

Requirements

Header

winuser.h

Library

Menu.lib

See Also

Reference

Menu Functions
AppendMenu
CreateMenu
DeleteMenu
RemoveMenu
WM_DRAWITEM
WM_MEASUREITEM
Menu Constants