TrackPopupMenuEx

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.

At a Glance

Header file: Winuser.h
Windows CE versions: 1.0 and later

Syntax

BOOL TrackPopupMenuEx(HMENU hmenu, UINT uFlags, int x, int y,
HWND
hwnd, LPTPMPARAMS lptpm);

Parameters

hmenu

[in] Handle to the shortcut menu to be displayed. This handle can be obtained by calling the CreatePopupMenu function to create a new shortcut menu or by calling the GetSubMenu function to retrieve the handle to a submenu associated with an existing menu item.

uFlags

[in] Specifies positioning and other options. This parameter can be zero or more of the values listed with the TrackPopupMenu function.

x

[in] Horizontal location of the shortcut menu, in screen coordinates.

y

[in] Vertical location of the shortcut menu, in screen coordinates.

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.

lptpm

[in] Long pointer to a TPMPARAMS structure that specifies an area of the screen the menu should not overlap. This parameter can be NULL.

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.

Remarks

For Windows CE versions 1.0 and 1.01, the lptpm parameter is not supported and must be set to NULL. This parameter is supported in versions 2.0 and later.

See Also

CreatePopupMenu, GetSubMenu, TPMPARAMS, TrackPopupMenu, WM_COMMAND