Menus
Menus This section describes menus and explains how to use them.

Overviews

About Menus

This topic discusses menus.

Menu Programming Considerations

This section discusses programming considerations related to menus.

Using Menus

This section provides code examples of tasks related to menus.

Functions

AppendMenu

The AppendMenu function appends a new item to the end of the specified menu bar, drop-down menu, submenu, or shortcut menu. You can use this function to specify the content, appearance, and behavior of the menu item.

CheckMenuItem

The CheckMenuItem function sets the state of the specified menu item's check-mark attribute to either selected or clear.

CheckMenuRadioItem

The CheckMenuRadioItem function checks a specified menu item and makes it a radio item. At the same time, the function clears all other menu items in the associated group and clears the radio-item type flag for those items.

CreateMenu

The CreateMenu function creates a menu. The menu is initially empty, but it can be filled with menu items by using the InsertMenuItem, AppendMenu, and InsertMenu functions.

CreatePopupMenu

The CreatePopupMenu function creates a drop-down menu, submenu, or shortcut menu. The menu is initially empty. You can insert or append menu items by using the InsertMenuItem function. You can also use the InsertMenu function to insert menu items and the AppendMenu function to append menu items.

DeleteMenu

The DeleteMenu function deletes an item from the specified menu. If the menu item opens a menu or submenu, this function destroys the handle to the menu or submenu and frees the memory used by the menu or submenu.

DestroyMenu

The DestroyMenu function destroys the specified menu and frees any memory that the menu occupies.

DrawMenuBar

The DrawMenuBar function redraws the menu bar of the specified window. If the menu bar changes after the system has created the window, this function must be called to draw the changed menu bar.

EnableMenuItem

The EnableMenuItem function enables, disables, or grays the specified menu item.

EndMenu

The EndMenu function ends the calling thread's active menu.

GetMenu

The GetMenu function retrieves a handle to the menu assigned to the specified window.

GetMenuBarInfo

The GetMenuBarInfo function retrieves information about the specified menu bar.

GetMenuCheckMarkDimensions

The GetMenuCheckMarkDimensions function returns the dimensions of the default check-mark bitmap. The system displays this bitmap next to selected menu items. Before calling the SetMenuItemBitmaps function to replace the default check-mark bitmap for a menu item, an application must determine the correct bitmap size by calling GetMenuCheckMarkDimensions.

GetMenuDefaultItem

The GetMenuDefaultItem function determines the default menu item on the specified menu.

GetMenuInfo

The GetMenuInfo function gets information about a specified menu.

GetMenuItemCount

The GetMenuItemCount function determines the number of items in the specified menu.

GetMenuItemID

The GetMenuItemID function retrieves the menu item identifier of a menu item located at the specified position in a menu.

GetMenuItemInfo

The GetMenuItemInfo function retrieves information about a menu item.

GetMenuItemRect

The GetMenuItemRect function retrieves the bounding rectangle for the specified menu item.

GetMenuState

The GetMenuState function retrieves the menu flags associated with the specified menu item. If the menu item opens a submenu, this function also returns the number of items in the submenu.

GetMenuString

The GetMenuString function copies the text string of the specified menu item into the specified buffer.

GetSubMenu

The GetSubMenu function retrieves a handle to the drop-down menu or submenu activated by the specified menu item.

GetSystemMenu

The GetSystemMenu function allows the application to access the window menu (also known as the system menu or the control menu) for copying and modifying.

HiliteMenuItem

The HiliteMenuItem function highlights or removes the highlighting from an item in a menu bar.

InsertMenu

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

Note  The InsertMenu function has been superseded by the InsertMenuItem function. You can still use InsertMenu, however, if you do not need any of the extended features of InsertMenuItem.
InsertMenuItem

The InsertMenuItem function inserts a new menu item at the specified position in a menu.

IsMenu

The IsMenu function determines whether a handle is a menu handle.

LoadMenu

The LoadMenu function loads the specified menu resource from the executable (.exe) file associated with an application instance.

LoadMenuIndirect

The LoadMenuIndirect function loads the specified menu template in memory.

MenuItemFromPoint

The MenuItemFromPoint function determines which menu item, if any, is at the specified location.

ModifyMenu

The ModifyMenu function changes an existing menu item. This function is used to specify the content, appearance, and behavior of the menu item.

RemoveMenu

The RemoveMenu function deletes a menu item or detaches a submenu from the specified menu. If the menu item opens a drop-down menu or submenu, RemoveMenu does not destroy the menu or its handle, allowing the menu to be reused. Before this function is called, the GetSubMenu function should retrieve a handle to the drop-down menu or submenu.

SetMenu

The SetMenu function assigns a new menu to the specified window.

SetMenuDefaultItem

The SetMenuDefaultItem function sets the default menu item for the specified menu.

SetMenuInfo

The SetMenuInfo function sets information for a specified menu.

SetMenuItemBitmaps

The SetMenuItemBitmaps function associates the specified bitmap with a menu item. Whether the menu item is selected or clear, the system displays the appropriate bitmap next to the menu item.

SetMenuItemInfo

The SetMenuItemInfo function changes information about a menu item.

TrackPopupMenu

The TrackPopupMenu function displays a shortcut menu at the specified location and tracks the selection of items on the menu. The shortcut menu can appear anywhere on the screen.

TrackPopupMenuEx

The TrackPopupMenuEx function displays a shortcut menu at the specified location and tracks the selection of items on the shortcut menu. The shortcut menu can appear anywhere on the screen.

Notifications

WM_COMMAND

The WM_COMMAND message is sent when the user selects a command item from a menu, when a control sends a notification message to its parent window, or when an accelerator keystroke is translated.

WM_CONTEXTMENU

The WM_CONTEXTMENU message notifies a window that the user clicked the right mouse button (right-clicked) in the window.

WM_ENTERMENULOOP

The WM_ENTERMENULOOP message informs an application's main window procedure that a menu modal loop has been entered.

WM_EXITMENULOOP

The WM_EXITMENULOOP message informs an application's main window procedure that a menu modal loop has been exited.

WM_GETTITLEBARINFOEX

Sent to request extended title bar information. A window receives this message through its WindowProc function.

WM_MENUCOMMAND

The WM_MENUCOMMAND message is sent when the user makes a selection from a menu.

WM_MENUDRAG

The WM_MENUDRAG message is sent to the owner of a drag-and-drop menu when the user drags a menu item.

WM_MENUGETOBJECT

The WM_MENUGETOBJECT message is sent to the owner of a drag-and-drop menu when the mouse cursor enters a menu item or moves from the center of the item to the top or bottom of the item.

WM_MENURBUTTONUP

The WM_MENURBUTTONUP message is sent when the user releases the right mouse button while the cursor is on a menu item.

WM_NEXTMENU

The WM_NEXTMENU message is sent to an application when the right or left arrow key is used to switch between the menu bar and the system menu.

WM_UNINITMENUPOPUP

The WM_UNINITMENUPOPUP message is sent when a drop-down menu or submenu has been destroyed.

Structures

MDINEXTMENU

The MDINEXTMENU structure contains information about the menu to be activated.

MENUBARINFO

The MENUBARINFO structure contains menu bar information.

MENUEX_TEMPLATE_HEADER

The MENUEX_TEMPLATE_HEADER structure defines the header for an extended menu template. This structure definition is for explanation only; it is not present in any standard header file.

MENUEX_TEMPLATE_ITEM

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

MENUGETOBJECTINFO

The MENUGETOBJECTINFO structure contains information about the menu that the mouse cursor is on.

MENUINFO

The MENUINFO structure contains information about a menu.

MENUITEMINFO

The MENUITEMINFO structure contains information about a menu item.

MENUITEMTEMPLATE

The MENUITEMTEMPLATE structure defines a menu item in a menu template.

MENUITEMTEMPLATEHEADER

The MENUITEMTEMPLATEHEADER structure defines the header for a menu template. A complete menu template consists of a header and one or more menu item lists.

TPMPARAMS

The TPMPARAMS structure contains extended parameters for the TrackPopupMenuEx function.

Tags :


Page view tracker