TrackPopupMenu
This function displays a floating pop-up menu at the specified location and tracks the selection of items on the pop-up menu. The floating pop-up menu can appear anywhere on the screen.
BOOL TrackPopupMenu(
HMENU hMenu,
UINT uFlags,
int x,
int y,
int nReserved,
HWND hWnd,
const RECT* prcRect
);
Parameters
hMenu
[in] Handle to the shortcut menu to be displayed. The handle can be obtained by calling CreatePopupMenu to create a new shortcut menu, or by calling GetSubMenu to retrieve the handle to a submenu associated with an existing menu item.uFlags
[in] A set of bit flags that specify function options.Use one of the following bit flag constants to specify how the function positions the shortcut menu horizontally.
Value Description TPM_CENTERALIGN If this flag is set, the function centers the shortcut menu horizontally relative to the coordinate specified by the x parameter. TPM_LEFTALIGN If this flag is set, the function positions the shortcut menu so that its left side is aligned with the coordinate specified by the x parameter. TPM_RIGHTALIGN Positions the shortcut menu so that its right side is aligned with the coordinate specified by the x parameter. Use one of the following bit flag constants to specify how the function positions the shortcut menu vertically.
TPM_BOTTOMALIGN If this flag is set, the function positions the shortcut menu so that its bottom side is aligned with the coordinate specified by the y parameter. TPM_TOPALIGN If this flag is set, the function positions the shortcut menu so that its top side is aligned with the coordinate specified by the y parameter. TPM_VCENTERALIGN If this flag is set, the function centers the shortcut menu vertically relative to the coordinate specified by the y parameter. Use the following bit flag constants to determine the user selection without having to set up a parent window for the menu.
Value Description TPM_NONOTIFY Unsupported. TPM_RETURNCMD If this flag is set, the function returns the menu item identifier of the user's selection in the return value. x
[in] Specifies the horizontal location of the shortcut menu, in screen coordinates.y
[in] Specifies the vertical location of the shortcut menu, in screen coordinates.nReserved
[in] Reserved; set to zero.hWnd
[in] Handle to the window that owns the shortcut menu. This window receives all messages from the menu. The window does not receive a WM_COMMAND message from the menu until the function returns.If you specify TPM_NONOTIFY in the uFlags parameter, the function does not send messages to the window identified by hWnd. However, you must still pass a window handle in hWnd. It can be any window handle from your application.
prcRect
[in] Ignored.
Return Values
If you specify TPM_RETURNCMD in the uFlags parameter, the return value is the menu-item identifier of the item that the user selected. If the user cancels the menu without making a selection, or if an error occurs, then the return value is zero.
If you do not specify TPM_RETURNCMD in the uFlags parameter, the return value is nonzero if the function succeeds and zero if it fails. To get extended error information, call GetLastError.
Requirements
OS Versions: Windows CE 1.0 and later.
Header: Winuser.h.
Link Library: Menu.lib.
See Also
CreatePopupMenu | GetSubMenu | RECT | WM_COMMAND | Menu Functions
Last updated on Wednesday, April 13, 2005
© 2005 Microsoft Corporation. All rights reserved.