IViewObjectEx ::QueryHitRect, méthode (ocidl.h)
Indique si un point d’un rectangle se trouve dans un aspect de dessin donné d’un objet.
Syntaxe
HRESULT QueryHitRect(
[in] DWORD dwAspect,
[in] LPCRECT pRectBounds,
[in] LPCRECT pRectLoc,
[in] LONG lCloseHint,
[out] DWORD *pHitResult
);
Paramètres
[in] dwAspect
Aspect de dessin demandé.
[in] pRectBounds
Rectangle englobant d’objet dans les coordonnées clientes de la fenêtre contenante. Ce rectangle est calculé et transmis par le conteneur afin que l’objet puisse interpréter de manière significative l’emplacement d’accès.
[in] pRectLoc
Rectangle de test d’accès, spécifié en unités HIMETRIC , par rapport au coin supérieur gauche de l’objet.
[in] lCloseHint
Distance suggérée, en unités HIMETRIC , que le conteneur considère comme proche. Cette valeur est un indicateur et les objets peuvent l’interpréter à leur manière. Les objets peuvent également utiliser cet indicateur pour déduire approximativement la résolution de sortie afin de choisir l’étendue de l’implémentation des tests d’accès.
[out] pHitResult
Pointeur vers les informations retournées sur l’accès exprimé en tant que valeurs d’énumération HITRESULT .
Valeur retournée
Cette méthode retourne S_OK en cas de réussite. Les autres valeurs de retour possibles sont les suivantes.
Code de retour | Description |
---|---|
|
Cette méthode n’est pas implémentée pour l’aspect demandé. Utilisez DVASPECT_CONTENT à la place. |
Remarques
Les conteneurs peuvent avoir besoin de tester si un objet chevauche un aspect de dessin donné d’un autre objet. Ils peuvent déterminer si les objets se chevauchent en demandant une région ou au moins un rectangle englobant de l’aspect en question. Toutefois, un moyen plus rapide d’effectuer cette opération consiste à appeler IViewObjectEx ::QueryHitRect pour demander à l’objet si un rectangle donné croise l’un de ses aspects de dessin.
Notes aux implémenteurs
Un objet prenant en charge IViewObjectEx est nécessaire pour implémenter cette méthode au moins pour l’aspect DVASPECT_CONTENT. L’objet ne doit pas effectuer d’autre action en réponse à cette méthode que pour retourner les informations ; il ne devrait pas y avoir d’effets secondaires. S’il existe une ambiguïté quant à savoir si un point est un accès, pour instance en raison de coordonnées qui ne sont pas converties exactement, l’objet doit retourner HITRESULT_HIT chaque fois qu’un point du rectangle peut être un impact sur l’objet. Autrement dit, il est possible de revendiquer un résultat pour un point qui n’est pas réellement rendu, mais jamais correct pour réclamer une erreur pour un point qui se trouve dans l’image rendue de l’objet.Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | ocidl.h |