Mensaje WM_MOUSEHOVER
Aparece en una ventana cuando el cursor se sitúa sobre el área cliente de la ventana durante el período de tiempo especificado en una llamada anterior a TrackMouseEvent.
Una ventana recibe este mensaje mediante la función WindowProc.
#define WM_MOUSEHOVER 0x02A1
Parámetros
-
wParam
-
Indica si hay varias teclas virtuales presionadas. Este parámetro puede ser uno o más de los siguientes valores.
Value Significado - MK_CONTROL
- 0x0008
La tecla CTRL está presionada. - MK_LBUTTON
- 0x0001
El botón izquierdo del mouse está presionado. - MK_MBUTTON
- 0x0010
El botón central del mouse está presionado. - MK_RBUTTON
- 0x0002
El botón derecho del mouse está presionado. - MK_SHIFT
- 0x0004
La tecla MAYÚS está presionada. - MK_XBUTTON1
- 0x0020
El primer botón X está presionado. - MK_XBUTTON2
- 0x0040
El segundo botón X está pulsado. -
lParam
-
La palabra de orden inferior especifica la coordenada X del cursor. La coordenada es relativa a la esquina superior izquierda del área cliente.
La palabra de primer orden especifica la coordenada Y del cursor. La coordenada es relativa a la esquina superior izquierda del área cliente.
Valor devuelto
Si la aplicación procesa este mensaje, debe devolver cero.
Comentarios
El seguimiento del puntero se detiene al generar WM_MOUSEHOVER. La aplicación debe llamar a TrackMouseEvent de nuevo si se requiere un seguimiento adicional del comportamiento del puntero del mouse.
Use el código siguiente para obtener la posición horizontal y vertical:
xPos = GET_X_LPARAM(lParam);
yPos = GET_Y_LPARAM(lParam);
Como se indicó anteriormente, la coordenada X está en el entero short de orden inferior del valor devuelto; la coordenada Y está en el entero short de orden superior (ambos representan valores con signo porque pueden tomar valores negativos en sistemas con varios monitores). Si el valor devuelto se asigna a una variable, puede usar la macro MAKEPOINTS para obtener una estructura POINTS a partir del valor devuelto. También puede usar las macros GET_X_LPARAM o GET_Y_LPARAM para extraer la coordenada X o Y.
Importante
No use las macros LOWORD ni 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, y LOWORD y HIWORD tratan las coordenadas como cantidades sin signo.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo compatible |
Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible |
Windows 2000 Server [solo aplicaciones de escritorio] |
Encabezado |
|
Consulte también
-
Referencia
-
Conceptual
-
Otros recursos