3 out of 8 rated this helpful - Rate this topic

WM_CONTEXTMENU message

Applies to: desktop apps only

Notifies a window that the user clicked the right mouse button (right-clicked) in the window.

#define WM_CONTEXTMENU                  0x007B

Parameters

wParam

A handle to the window in which the user right-clicked the mouse. This can be a child window of the window receiving the message. For more information about processing this message, see the Remarks section.

lParam

The low-order word specifies the horizontal position of the cursor, in screen coordinates, at the time of the mouse click.

The high-order word specifies the vertical position of the cursor, in screen coordinates, at the time of the mouse click.

Return value

No return value.

Remarks

A window can process this message by displaying a shortcut menu using the TrackPopupMenu or TrackPopupMenuEx functions. To obtain the horizontal and vertical positions, use the following code.


xPos = GET_X_LPARAM(lParam); 
yPos = GET_Y_LPARAM(lParam); 

If a window does not display a shortcut menu it should pass this message to the DefWindowProc function. If a window is a child window, DefWindowProc sends the message to the parent. Otherwise, DefWindowProc displays a default shortcut menu if the specified position is in the window's caption.

DefWindowProc generates the WM_CONTEXTMENU message when it processes the WM_RBUTTONUP or WM_NCRBUTTONUP message or when the user types SHIFT+F10. The WM_CONTEXTMENU message is also generated when the user presses and releases the VK_APPS key.

If the context menu is generated from the keyboard—for example, if the user types SHIFT+F10—then the x- and y-coordinates are -1 and the application should display the context menu at the location of the current selection rather than at (xPos, yPos).

Requirements

Minimum supported client

Windows 2000 Professional

Minimum supported server

Windows 2000 Server

Header

Winuser.h (include Windows.h)

See also

Reference
DefWindowProc
GET_X_LPARAM
GET_Y_LPARAM
TrackPopupMenu
TrackPopupMenuEx
WM_NCRBUTTONUP
WM_RBUTTONUP
Conceptual
Menus

 

 

Send comments about this topic to Microsoft

Build date: 2/3/2012

Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ
Value
WM_CONTEXTMENU = &H7B