mensaje de WM_CONTEXTMENU

Notifica a una ventana que el usuario desea que aparezca un menú contextual. Es posible que el usuario haya clic en el botón derecho del mouse (haga clic con el botón derecho) en la ventana, presione Mayús+F10 o presione la tecla de aplicaciones (tecla de menú contextual) disponible en algunos teclados.

#define WM_CONTEXTMENU                  0x007B

Parámetros

wParam

Identificador de la ventana en la que el usuario ha clic con el botón derecho en el mouse. Esta ventana puede ser una ventana secundaria de la ventana que recibe el mensaje. Para obtener más información sobre cómo procesar este mensaje, consulte la sección Comentarios.

lParam

La palabra de orden bajo especifica la posición horizontal del cursor, en coordenadas de pantalla, en el momento del clic del mouse.

La palabra de orden superior especifica la posición vertical del cursor, en coordenadas de pantalla, en el momento del clic del mouse.

Valor devuelto

No de devuelve ningún valor.

Observaciones

Una ventana puede procesar este mensaje mostrando un menú contextual mediante las funciones TrackPopupMenu o TrackPopupMenuEx . Para obtener las posiciones horizontales y verticales, use el código siguiente.

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

Si una ventana no muestra un menú contextual, debe pasar este mensaje a la función DefWindowProc . Si una ventana es una ventana secundaria, DefWindowProc envía el mensaje al elemento primario. De lo contrario, DefWindowProc muestra un menú contextual predeterminado si la posición especificada está en la subtítulo de la ventana.

DefWindowProc genera el mensaje WM_CONTEXTMENU cuando procesa el mensaje de WM_RBUTTONUP o WM_NCRBUTTONUP o cuando el usuario escribe MAYÚS+F10. El WM_CONTEXTMENU mensaje también se genera cuando el usuario presiona y suelta la tecla VK_APPS .

Si el menú contextual se genera desde el teclado, por ejemplo, si el usuario escribe MAYÚS+F10, las coordenadas x e y son -1 y la aplicación debe mostrar el menú contextual en la ubicación de la selección actual en lugar de en (xPos, yPos).

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Winuser.h (incluye Windows.h)

Consulte también

Referencia

DefWindowProc

GET_X_LPARAM

GET_Y_LPARAM

TrackPopupMenu

TrackPopupMenuEx

WM_NCRBUTTONUP

WM_RBUTTONUP

Conceptual

Menús