mensaje de WM_POINTERENTER
Se envía a una ventana cuando un nuevo puntero entra en el intervalo de detección sobre la ventana (mantener el puntero) o cuando un puntero existente se mueve dentro de los límites de la ventana.
Una ventana recibe este mensaje a través de su función windowProc .
! [Importante]
Las aplicaciones de escritorio deben tener en cuenta ppp. Si la aplicación no es compatible con PPP, las coordenadas de pantalla contenidas en los mensajes de puntero y las estructuras relacionadas pueden parecer inexactas debido a la virtualización de PPP. La virtualización de PPP proporciona compatibilidad de escalado automático con aplicaciones que no son compatibles con PPP y que están activas de forma predeterminada (los usuarios pueden desactivarla). Para obtener más información, vea Escritura de High-DPI Aplicaciones Win32.
#define WM_POINTERENTER 0x0249
Parámetros
-
wParam
-
Contiene el identificador de puntero y la información adicional. Use las macros siguientes para recuperar información específica en el parámetro wParam.
- GET_POINTERID_WPARAM(wParam): el identificador del puntero.
- IS_POINTER_NEW_WPARAM(wParam): indica si este mensaje es el primer mensaje generado por un nuevo intervalo de detección de entrada de puntero (mantener el puntero).
- IS_POINTER_INRANGE_WPARAM(wParam): indica si este mensaje lo generó un puntero que no tiene un intervalo de detección izquierdo. Esta marca siempre se establece para WM_POINTERENTER mensajes.
- IS_POINTER_INCONTACT_WPARAM(wParam): una marca que indica si un puntero que está en contacto generó este mensaje. Esta marca no está establecida para un puntero en el intervalo de detección (mantener el puntero).
-
lParam
-
Contiene la ubicación de punto del puntero.
Nota
Dado que el puntero puede establecer contacto con el dispositivo sobre un área no trivial, esta ubicación de punto puede ser una simplificación de un área de puntero más compleja. Siempre que sea posible, una aplicación debe usar la información completa del área de puntero en lugar de la ubicación del punto.
Use las macros siguientes para recuperar las coordenadas de pantalla físicas del punto.
- GET_X_LPARAM(lParam): coordenada x (punto horizontal).
- GET_Y_LPARAM(lParam): coordenada y (punto vertical).
Valor devuelto
Si una aplicación procesa este mensaje, debe devolver cero.
Si la aplicación no procesa este mensaje, debe llamar a DefWindowProc.
Observaciones
Una ventana puede usar la notificación WM_POINTERENTER para proporcionar comentarios al usuario mientras el puntero está sobre su superficie o para reaccionar de otro modo a la presencia de un puntero sobre su superficie.
Esta notificación solo se envía a la ventana que recibe la entrada del puntero. En la tabla siguiente se enumeran algunas de las situaciones en las que se envía esta notificación.
Acción | Conjunto de marcas | Notificaciones enviadas a |
---|---|---|
Un nuevo puntero entra en el intervalo de detección (mantener el puntero). |
IS_POINTER_NEW_WPARAM IS_POINTER_INRANGE_WPARAM |
Ventana en la que el puntero entra en el intervalo de detección. |
Un puntero que mantiene el puntero se cruza dentro de los límites de la ventana. |
IS_POINTER_INRANGE_WPARAM |
Ventana en la que se ha cruzado el puntero. |
! [Importante]
Cuando una ventana pierde la captura de un puntero y recibe la notificación de WM_POINTERCAPTURECHANGED, normalmente no recibirá ninguna notificación adicional. Por este motivo, es importante que no realice ninguna suposición basada en notificaciones WM_POINTERDOWN/WM_POINTERUP o WM_POINTERENTER/WM_POINTERLEAVE emparejadas uniformemente.
Cuando las entradas proceden del mouse, como resultado de la integración de mensajes de puntero y mouse, no se envía WM_POINTERENTER.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo admitido |
Windows 8 [solo aplicaciones de escritorio] |
Servidor mínimo admitido |
Windows Server 2012 [solo aplicaciones de escritorio] |
Encabezado |
|