Méthode ITextRangeProvider ::GetEnclosingElement (uiautomationcore.h)
Retourne l’élément le plus interne qui entoure la plage de texte spécifiée.
Syntaxe
HRESULT GetEnclosingElement(
[out, retval] IRawElementProviderSimple **pRetVal
);
Paramètres
[out, retval] pRetVal
Type : IRawElementProviderSimple**
Le fournisseur UI Automation de l’élément le plus interne qui entoure l’ITextRangeProvider spécifié.
Notes
L’élément englobant peut s’étendre plus que le ITextRangeProvider spécifié.
Si aucun élément englobant n’est trouvé, le parent ITextProvider du ITextRangeProvider est retourné.
Ce paramètre est passé sans être initialisé.
Valeur retournée
Type : HRESULT
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Notes
Exemples
Cet exemple montre un flux de texte qui contient un lien d’image. Le lien est un enfant de l’image, mais les deux couvrent la même plage de texte et sont exposés en tant qu’objets incorporés dans le flux de texte.
Hello <Image Link> World
- Image et link sont également des descendants du ITextProvider du flux, et peuvent être spécifiés en tant que childElement dans un appel à ITextProvider ::RangeFromChild.
- L’appel de ITextRangeProvider ::RangeFromChild, à l’aide de l’image ou du lien, renvoie la même plage de texte (Range1).
- GetChildren ne retourne pas le lien.
- GetEnclosingElement ne retourne l’image pour aucune plage de texte.
- GetEnclosingElement sur Range1 retourne le lien.
- GetChildren on Range1 ne retourne aucun enfant.
- GetEnclosingElement sur la plage de texte du ITextProvider du flux retourne le fournisseur.
- GetChildren sur la plage de texte du ITextProvider du flux retourne uniquement l’image.
Cet exemple montre un flux de texte qui contient un tableau à deux cellules entouré de texte.
Texte de début
Cellule de tableau 1 Cellule de tableau 2 Texte de fin
- Cas 1 : ITextProvider du flux et plage de texte entière
- ITextRangeProvider ::GetEnclosingElement sur l’ensemble de la plage de texte retourne le ITextProvider du flux.
- GetChildren retourne tous les éléments enfants du ITextProvider du flux, uniquement l’élément table dans ce cas.
- Cas 2 : Plage de texte obtenue en appelant ITextProvider ::RangeFromChild sur l’élément de table :
- ITextRangeProvider ::GetEnclosingElement retourne l’élément table.
- ITextRangeProvider ::GetChildren retourne les deux cellules du tableau.
- Cas 3 : Plage de texte qui s’étend sur le contenu visuel de la cellule de tableau 1 Cellule de tableau 2 :
- ITextRangeProvider ::GetEnclosingElement retourne l’élément table.
- ITextRangeProvider ::GetChildren retourne les deux cellules du tableau.
- Cas 4 : Plage de texte qui s’étend sur le mot Cellule du tableau cellule 1 :
- ITextRangeProvider ::GetEnclosingElement retourne le premier élément de cellule.
- ITextRangeProvider ::GetChildren ne retourne aucun élément.
- Cas 5 : Plage de texte dégénérée (vide) qui représente les deux démarrages (tableau et première cellule) :
- ITextRangeProvider ::GetEnclosingElement retourne le premier élément de cellule (l’élément le plus interne avec une plage qui inclut la plage dégénérée).
- ITextRangeProvider ::GetChildren ne retourne aucun élément.
- Cas 1 : ITextProvider du flux et plage de texte entière
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau | applications UWP] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau | applications UWP] |
Plateforme cible | Windows |
En-tête | uiautomationcore.h (incluez UIAutomation.h) |
Voir aussi
ITextProvider, ITextRangeProvider, ITextRangeProvider ::GetChildren, UI Automation Providers Overview