Partager via


Méthode IDirectManipulationManager::RegisterHitTestTarget (directmanipulation.h)

Inscrit un thread dédié pour le test d’accès.

Syntaxe

HRESULT RegisterHitTestTarget(
  [in]           HWND                            window,
  [in, optional] HWND                            hitTestWindow,
  [in]           DIRECTMANIPULATION_HITTEST_TYPE type
);

Paramètres

[in] window

Handle de la fenêtre d’application main (généralement créé à partir du thread d’interface utilisateur).

[in, optional] hitTestWindow

Handle de la fenêtre dans laquelle le test d’accès est inscrit (doit être créé à partir du thread de test d’accès). Passez nullptr pour annuler l’inscription d’une cible de test d’accès précédemment inscrite.

[in] type

Une des valeurs de DIRECTMANIPULATION_HITTEST_TYPE. Spécifie si la fenêtre d’interface utilisateur ou la fenêtre de test d’accès (ou les deux) reçoit le message de test d’accès WM_POINTERDOWN , et dans quel ordre.

Valeur retournée

Si la méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Notes

Le test d’accès est généralement effectué sur le thread d’interface utilisateur de l’application. L’application reçoit un message WM_POINTERDOWN sur lequel le test d’accès est effectué. Si une manipulation est nécessaire, SetContact est appelé sur une ou plusieurs fenêtres d’affichage. Une application peut utiliser la méthode RegisterHitTestTarget pour déléguer cette responsabilité de test d’accès à un thread de test d’accès distinct.

Une fois qu’une cible de test de réussite dédiée a été correctement inscrite, WM_POINTERDOWN messages sont traités sur le thread de test d’accès. Si une manipulation, telle que panoramique ou zoom, est requise, SetContact est appelé à partir de ce thread.

Si SetContact n’est pas appelé à partir du thread de test d’accès, WM_POINTERDOWN messages peuvent être traités sur le thread d’interface utilisateur, en fonction de la DIRECTMANIPULATION_HITTEST_TYPE spécifiée lors de l’inscription.

Si SetContact n’est pas appelé par le thread de test d’accès ou par le thread d’interface utilisateur, Direct Manipulation ignore l’entrée qui est ensuite gérée sur le thread d’interface utilisateur.

Spécifications

   
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 directmanipulation.h

Voir aussi

IDirectManipulationManager