Partager via


Fonction SkipPointerFrameMessages (winuser.h)

Détermine le frame d’entrée de pointeur qui a généré le message le plus récemment récupéré pour le pointeur spécifié et ignore tous les messages d’entrée de pointeur en file d’attente (non retriqués) générés à partir du même frame d’entrée de pointeur. Si une application a récupéré des informations pour une image entière à l’aide de la fonction GetPointerFrameInfo , de la fonction GetPointerFrameInfoHistory ou de l’une de ses variantes spécifiques au type, elle peut utiliser cette fonction pour éviter de récupérer et d’ignorer les messages restants de cette trame un par un.

Syntaxe

BOOL SkipPointerFrameMessages(
  [in] UINT32 pointerId
);

Paramètres

[in] pointerId

Identificateur du pointeur. Les messages en attente seront ignorés pour le frame qui inclut l’entrée la plus récente récupérée pour ce pointeur.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

Les appareils en mode parallèle peuvent signaler l’entrée de pointeur dans les trames, c’est-à-dire qu’ils peuvent signaler l’état et la position de tous les pointeurs de cet appareil dans un seul rapport d’entrée au système. Dans l’idéal, les applications doivent afficher la trame entière comme une seule entrée, sauf si les exigences spécifiques à l’application l’exigent autrement.

La fonction SkipPointerFrameMessages peut être utilisée conjointement avec la fonction GetPointerFrameInfo (ou l’une de ses variantes spécifiques au type) pour consommer des images entières en tant qu’entrée unique.

Lorsqu’une application voit un message de pointeur, elle peut utiliser la fonction GetPointerFrameInfo pour récupérer l’intégralité du frame d’entrée de pointeur auquel appartient le message de pointeur, ce qui permet d’obtenir une vue mise à jour de tous les pointeurs actuellement détenus par la fenêtre. Notez que le frame retourné contient uniquement des pointeurs qui appartiennent actuellement à la même fenêtre que le pointeur spécifié.

Après avoir récupéré l’intégralité de la trame d’informations, l’application peut ensuite appeler la fonction SkipPointerFrameMessages pour ignorer les messages de pointeur restants associés à ce frame qui sont en attente de récupération. Cela permet à l’application d’économiser la surcharge liée à la récupération et au traitement des messages restants un par un.

Avertissement La fonction SkipPointerFrameMessages doit être utilisée uniquement lorsque l’appelant peut être sûr qu’aucune autre entité sur le thread de l’appelant (par exemple , Manipulation directe) ne s’attend à récupérer les messages pointeurs en attente. Pour cette raison, SkipPointerFrameMessages ne doit pas être utilisé conjointement avec la manipulation directe lors du traitement de plusieurs interactions simultanées.
 
Notez que les informations récupérées sont associées au cadre de pointeur le plus récemment récupéré par le thread appelant. Une fois que le thread appelant a récupéré son message suivant, les informations associées au frame de pointeur précédent peuvent ne plus être disponibles.

Si le cadre de pointeur ne contient aucun pointeur supplémentaire en dehors du pointeur spécifié, cette fonction réussit sans action.

Si le thread appelant ne possède pas la fenêtre à laquelle le message de pointeur a été remis, cette fonction échoue avec la dernière erreur définie sur ERROR_ACCESS_DENIED.

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]
Plateforme cible Windows
En-tête winuser.h (inclure Windows.h)
Bibliothèque User32.lib
DLL User32.dll

Voir aussi

Fonctions