Compartir a través de


mensaje de WM_NCXBUTTONDBLCLK

Publicado cuando el usuario hace doble clic en XBUTTON1 o XBUTTON2 mientras el cursor está en el área no cliente de una ventana. Este mensaje se publica en la ventana que contiene el cursor. Si una ventana ha capturado el mouse, este mensaje no se publica.

Una ventana recibe este mensaje a través de su función windowProc .

#define WM_NCXBUTTONDBLCLK              0x00AD

Parámetros

wParam

La palabra de orden bajo especifica el valor de prueba de posicionamiento devuelto por la función DefWindowProc desde el procesamiento del mensaje WM_NCHITTEST. Para obtener una lista de los valores de prueba de posicionamiento, consulte WM_NCHITTEST.

La palabra de orden superior indica en qué botón se hizo doble clic. Puede ser uno de los siguientes valores.

Valor Significado
XBUTTON1
0x0001
Se hizo doble clic en el XBUTTON1.
XBUTTON2
0x0002
Se hizo doble clic en el segundo XBUTTON2.

lParam

Puntero a una estructura POINTS que contiene las coordenadas x e y del cursor. Las coordenadas son relativas a la esquina superior izquierda de la pantalla.

Valor devuelto

Si una aplicación procesa este mensaje, debe devolver TRUE. Para obtener más información sobre cómo procesar el valor devuelto, vea la sección Comentarios.

Observaciones

Windows admite ratones con hasta cinco botones: izquierdo, central y derecho, además de dos botones adicionales llamados XBUTTON1 y XBUTTON2. Los botones XBUTTON1 y XBUTTON2 se encuentran a menudo en los lados del mouse, cerca de la base. Estos botones adicionales no están presentes en todos los ratones. Si está presente, los botones XBUTTON1 y XBUTTON2 a menudo se asignan a una función de aplicación, como la navegación hacia delante y hacia atrás en un explorador web.

Use el código siguiente para obtener la información del parámetro wParam.

nHittest = GET_NCHITTEST_WPARAM(wParam); 
fwButton = GET_XBUTTON_WPARAM(wParam); 

También puede usar el código siguiente para obtener las coordenadas x e y de lParam:

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

Importante

No use la LOWORD ni macros hiword para extraer las coordenadas x e y de la posición del cursor porque estas macros devuelven resultados incorrectos en sistemas con varios monitores. Los sistemas con varios monitores pueden tener coordenadas x e y negativas negativas y LOWORD y HIWORD tratar las coordenadas como cantidades sin signo.

De forma predeterminada, la función DefWindowProc prueba el punto especificado para obtener la posición del cursor y realiza la acción adecuada. Si procede, envía el mensaje WM_SYSCOMMAND a la ventana.

Una ventana no necesita tener el estilo CS_DBLCLKS para recibir mensajes WM_NCXBUTTONDBLCLK. El sistema genera un mensaje de WM_NCXBUTTONDBLCLK cuando el usuario presiona, libera y vuelve a presionar un XBUTTON dentro del límite de tiempo de doble clic del sistema. Al hacer doble clic en uno de estos botones, se generan cuatro mensajes: WM_NCXBUTTONDOWN, WM_NCXBUTTONUP, WM_NCXBUTTONDBLCLKy WM_NCXBUTTONUP de nuevo.

A diferencia de los mensajes WM_NCLBUTTONDBLCLK, WM_NCMBUTTONDBLCLKy WM_NCRBUTTONDBLCLK, una aplicación debe devolver TRUE de este mensaje si lo procesa. Si lo hace, permitirá que el software que simula este mensaje en sistemas Windows anteriores a Windows 2000 determine si el procedimiento de ventana procesó el mensaje o se llamó a DefWindowProc procesarlo.

Requisitos

Requisito Valor
Cliente mínimo admitido
Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo admitido
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Winuser.h (incluya Windowsx.h)

Consulte también

de referencia de

DefWindowProc

GET_X_LPARAM

GET_Y_LPARAM

WM_NCHITTEST

WM_NCXBUTTONDOWN

WM_NCXBUTTONUP

WM_SYSCOMMAND

conceptual de

de entrada del mouse

otros recursos

MAKEPOINTS

PUNTOS de