Méthode IAccessibleWindowlessSite ::AcquireObjectIdRange (oleacc.h)
Acquiert une plage d’ID d’objet à partir de l’hôte de contrôle et les marque comme réservés par un contrôle sans fenêtre spécifique.
Syntaxe
HRESULT AcquireObjectIdRange(
[in] long rangeSize,
[in, optional] IAccessibleHandler *pRangeOwner,
[out] long *pRangeBase
);
Paramètres
[in] rangeSize
Taille de la plage d’ID d’objet demandée.
[in, optional] pRangeOwner
Contrôle sans fenêtre qui demande la plage.
[out] pRangeBase
Premier ID d’objet dans la plage acquise.
Valeur retournée
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
Pour éviter d’utiliser un ID d’objet qui appartient à un autre contrôle sans fenêtre, un contrôle doit acquérir une plage d’ID d’objet avant d’appeler la fonction NotifyWinEvent . Un contrôle doit acquérir suffisamment d’ID d’objet pour tous ses objets accessibles contenus. Par exemple, un contrôle d’arborescence avec 100 enfants réserve au moins 101 ID d’objet, un pour la racine et un pour chaque enfant. Un contrôle d’arborescence qui devrait croître réserve autant d’ID d’objet que prévu. Si le contrôle de l’arbre devrait croître de plusieurs centaines d’enfants, il réserverait une plage de 1 000 ID juste pour être sûr.
Lorsque la fenêtre qui contient le contrôle Microsoft ActiveX reçoit un message WM_GETOBJECT avec une valeur LPARAM (ID d’objet) qui se trouve dans une plage réservée, elle doit appeler la méthode IAccessibleHandler ::AccessibleObjectFromID pour obtenir un objet IAccessible pour cet ID d’objet.
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 | oleacc.h |
Bibliothèque | Oleacc.lib |
DLL | Oleacc.dll |