Message WM_POINTERENTER
Envoyé à une fenêtre lorsqu’un nouveau pointeur entre dans la plage de détection sur la fenêtre (pointage) ou lorsqu’un pointeur existant se déplace dans les limites de la fenêtre.
Une fenêtre reçoit ce message via sa fonction WindowProc.
![Important]
Les applications de bureau doivent être compatibles ppp. Si votre application ne prend pas en charge la résolution des problèmes, les coordonnées d’écran contenues dans les messages de pointeur et les structures associées peuvent sembler inexactes en raison de la virtualisation PPP. La virtualisation PPP fournit une prise en charge automatique de la mise à l’échelle pour les applications qui ne prennent pas en charge la résolution des problèmes de résolution et qui sont actives par défaut (les utilisateurs peuvent la désactiver). Pour plus d’informations, consultez Écriture d’applications Win32 haute résolution.
#define WM_POINTERENTER 0x0249
Paramètres
-
wParam
-
Contient l’identificateur de pointeur et les informations supplémentaires. Utilisez les macros suivantes pour récupérer des informations spécifiques dans le paramètre wParam.
- GET_POINTERID_WPARAM(wParam) : identificateur du pointeur.
- IS_POINTER_NEW_WPARAM(wParam) : indique si ce message est le premier message généré par un nouveau pointeur entrant dans la plage de détection (pointage).
- IS_POINTER_INRANGE_WPARAM(wParam) : indique si ce message a été généré par un pointeur qui n’a pas quitté la plage de détection. Cet indicateur est toujours défini pour les messages WM_POINTERENTER .
- IS_POINTER_INCONTACT_WPARAM(wParam) : indicateur qui indique si ce message a été généré par un pointeur qui est en contact. Cet indicateur n’est pas défini pour un pointeur dans la plage de détection (pointage).
-
lParam
-
Contient l’emplacement du pointeur.
Notes
Étant donné que le pointeur peut entrer en contact avec l’appareil sur une zone non triviale, cet emplacement de point peut être une simplification d’une zone de pointeur plus complexe. Dans la mesure du possible, une application doit utiliser les informations complètes sur la zone de pointeur au lieu de l’emplacement du point.
Utilisez les macros suivantes pour récupérer les coordonnées d’écran physiques du point.
- GET_X_LPARAM(lParam) : coordonnée x (point horizontal).
- GET_Y_LPARAM(lParam) : coordonnée y (point vertical).
Valeur retournée
Si une application traite ce message, elle doit retourner zéro.
Si l’application ne traite pas ce message, elle doit appeler DefWindowProc.
Remarques
La notification WM_POINTERENTER peut être utilisée par une fenêtre pour fournir des commentaires à l’utilisateur lorsque le pointeur se trouve sur sa surface ou pour réagir à la présence d’un pointeur sur sa surface.
Cette notification est envoyée uniquement à la fenêtre qui reçoit une entrée pour le pointeur. Le tableau suivant répertorie certaines des situations dans lesquelles cette notification est envoyée.
Action | Jeu d’indicateurs | Notifications envoyées à |
---|---|---|
Un nouveau pointeur entre dans la plage de détection (pointage). |
IS_POINTER_NEW_WPARAM IS_POINTER_INRANGE_WPARAM |
Fenêtre sur laquelle le pointeur entre dans la plage de détection. |
Un pointeur pointeur passe dans les limites de la fenêtre. |
IS_POINTER_INRANGE_WPARAM |
Fenêtre dans laquelle le pointeur s’est croisé. |
![Important]
Lorsqu’une fenêtre perd la capture d’un pointeur et qu’elle reçoit la notification WM_POINTERCAPTURECHANGED , elle ne reçoit généralement aucune autre notification. Pour cette raison, il est important de ne pas faire d’hypothèses basées sur des notifications WM_POINTERDOWN/WM_POINTERUP ou WM_POINTERENTER/WM_POINTERLEAVE uniformément associées.
Lorsque les entrées proviennent de la souris, à la suite de l’intégration des messages de la souris et du pointeur, WM_POINTERENTER n’est pas envoyé.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows 8 [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows Server 2012 [applications de bureau uniquement] |
En-tête |
|