Image (type de contrôle)

Cette rubrique fournit des informations sur la prise en charge de Microsoft UI Automation pour le type de contrôle image .

Les contrôles d’image utilisés comme icônes, graphiques d’information et graphiques prendront en charge le type de contrôle image . Les contrôles utilisés comme images d’arrière-plan ou de filigrane ne prennent pas en charge le type de contrôle image .

Les sections suivantes définissent l’arborescence, les propriétés, les modèles de contrôle et les événements UI Automation requis pour le type de contrôle image . Les exigences d’UI Automation s’appliquent à tous les contrôles d’image où l’infrastructure/plateforme d’interface utilisateur intègre la prise en charge d’UI Automation pour les types de contrôle et les modèles de contrôle.

Cette rubrique contient les sections suivantes.

Structure d’arborescence classique

Le tableau suivant illustre un contrôle classique et une vue de contenu de l’arborescence UI Automation relative aux contrôles d’image et décrit ce que peut contenir chaque affichage. Pour plus d’informations sur l’arborescence UI Automation, consultez UI Automation Tree Overview.

Vue de contrôle Vue de contenu
Image Image (selon que l’image contient des informations, en fonction de la valeur de la propriété des identificateurs de propriété de l’élément Automation )

Propriétés pertinentes

Le tableau suivant répertorie les propriétés UI Automation dont la valeur ou la définition est particulièrement pertinente pour les contrôles image. Pour plus d’informations sur les propriétés UI Automation, consultez extraction de propriétés à partir d’éléments UI Automation.

Propriété UI Automation Valeur Notes
UIA _ AutomationIdPropertyId Consultez les remarques. La valeur de cette propriété doit être unique parmi tous les éléments homologues de l’affichage brut de l’arborescence UI Automation.
UIA _ BoundingRectanglePropertyId Consultez les remarques. Rectangle externe qui contient l’ensemble du contrôle.
UIA _ ClickablePointPropertyId Consultez les remarques. Le point cliquable du contrôle d’image doit être un point dans le rectangle englobant du contrôle image.
UIA _ ControlTypePropertyId Image
UIA _ HelpTextPropertyId Consultez les remarques. La propriété HelpText expose une chaîne localisée qui décrit l’apparence visuelle réelle du contrôle ou d’autres informations d’info-bulle associées à l’image. Cette propriété doit être prise en charge lorsqu’une longue Description est nécessaire pour transmettre plus d’informations sur le contrôle image (par exemple, si l’image est un graphique ou un diagramme complexe). Cette propriété correspond à la balise HTML longdesc et à la balise SVG (Scalable Vector Graphics) desc . Les développeurs qui travaillent avec des contrôles Image doivent prendre en charge une propriété pour pouvoir définir la description visuelle sur le contrôle. Cette propriété doit être mappée à la propriété UI Automation VisualDescription .
UIA _ IsContentElementPropertyId Consultez les remarques. Le contrôle image doit être inclus dans l’affichage de contenu de l’arborescence UI Automation lorsqu’il contient des informations significatives qui ne sont pas encore exposées à l’utilisateur final.
UIA _ IsControlElementPropertyId TRUE Le contrôle image est toujours inclus dans l’affichage de contrôle de l’arborescence UI Automation.
UIA _ IsKeyboardFocusablePropertyId Consultez les remarques. Si le contrôle peut recevoir le focus clavier, il doit prendre en charge cette propriété.
UIA _ ItemStatusPropertyId Consultez les remarques. Si le contrôle Image représente des informations d’état sur un élément particulier à l’écran, le contrôle doit être contenu dans l’élément. Lorsque l’image est contenue dans un élément, l’élément doit prendre en charge la propriété Status et déclencher les notifications appropriées lorsque l’état change. Si une image correspond à un contrôle autonome et transmet un état, la propriété Status doit être prise en charge.
UIA _ LabeledByPropertyId Consultez les remarques. S’il existe une étiquette de texte statique, cette propriété doit exposer une référence à ce contrôle.
UIA _ LocalizedControlTypePropertyId Consultez les remarques. Chaîne localisée correspondant au type de contrôle image . La valeur par défaut est « image » pour « fr-fr » ou « anglais » (États-Unis).
UIA _ NamePropertyId Consultez les remarques. La propriété Name doit être exposée pour tous les contrôles d’image qui contiennent des informations. Pour accéder par programme à ces informations, il convient de fournir un équivalent textuel du graphique. Si le contrôle d’image est purement décoratif, il doit s’afficher uniquement dans la vue de contrôle de l’arborescence UI Automation et n’a pas besoin d’un nom (consultez la section Notes). Les infrastructures d’interface utilisateur doivent prendre en charge une propriété de texte de remplacement ou ALT sur les images qu’il est possible de définir dans leur infrastructure. Cette propriété est ensuite mappée à la propriété nom UI Automation.

Modèles de contrôle requis

Le tableau suivant répertorie les modèles de contrôle UI Automation qui doivent être pris en charge pour les contrôles image. Pour plus d’informations sur les modèles de contrôle, consultez UI Automation Control Patterns Overview.

Modèle de contrôle Support Notes
IGridItemProvider Dépend Le contrôle image prend en charge le modèle de contrôle GridItem si le contrôle se trouve dans un conteneur de grille.
IInvokeProvider Jamais Si le contrôle image est un objet cliquable, le contrôle doit prendre en charge un type de contrôle qui prend en charge le modèle de contrôle Invoke , tel que le type de contrôle Button . Pour un objet image qui contient plusieurs objets interversés, l’élément (type de contrôle image) peut héberger des liens enfants (type de contrôleHyperlink ) dans l’arborescence UI Automation.
ISelectionItemProvider Jamais Les contrôles image ne doivent pas prendre en charge le modèle de contrôle SelectionItem . Si les images font partie d’un conteneur sélectionnable comme un bouton qui a une icône d’image comme contenu, ce conteneur prend en charge le modèle, et non l’image dans.
ITableItemProvider Dépend Le contrôle image prend en charge le modèle de contrôle TableItem si le contrôle se trouve dans un conteneur qui a des contrôles Header.

Événements obligatoires

Le tableau suivant répertorie les événements UI Automation nécessaires à la prise en charge des contrôles d’image. Pour plus d’informations sur les événements, consultez UI Automation Events Overview.

Événement UI Automation Notes
UIA _ AutomationFocusChangedEventId
UIA _ Événement de modification de propriété BoundingRectanglePropertyId.
UIA _ Événement de modification de propriété IsEnabledPropertyId. Si le contrôle prend en charge la propriété IsEnabled , il doit prendre en charge cet événement.
UIA _ Événement de modification de propriété IsOffscreenPropertyId. Si le contrôle prend en charge la propriété IsOffscreen , il doit prendre en charge cet événement.
UIA _ Événement de modification de propriété ItemStatusPropertyId. Si le contrôle prend en charge la propriété ItemStatus , il doit prendre en charge cet événement.
UIA _ Événement de modification de propriété NamePropertyId.
UIA _ StructureChangedEventId

Notes

Le World Wide Web Consortium (W3C) définit une image décorative comme une image qui n’ajoute pas d’informations au contenu d’une page. Pour plus d’informations, consultez la rubrique W3C sur les images décoratifs.

En ce qui concerne l’Automation d’interface utilisateur :

  • Si une image est purement décorative, n’est pas interactive et ne transmet pas d’informations, l’image :
    • Peut être ou non dans l’arborescence UIA
    • Peut être ou non dans la vue de UIA brut
    • Ne doit pas être dans l’affichage de contrôle UIA
    • Ne doit pas être dans l’affichage de contenu
    • Peut avoir ou non un nom
  • Si une image transmet des informations, mais qu’il existe un texte clairement associé qui fournit les mêmes informations (par exemple, un bouton de lecture qui contient un graphique en triangle pointant vers la gauche avec le texte « Play »), l’image est considérée comme décorative et l’image :
    • Doit être dans la vue brute
    • Doit être dans l’affichage de contrôle
    • Ne doit pas être dans l’affichage de contenu
    • Peut avoir ou non une valeur dans la propriété Name
    • Le texte qui indique également la signification de l’image doit être dans l’affichage de contenu
  • Si une image est informatif et qu’elle transmet des détails qui ne sont pas fournis par un texte associé, l’image :
    • Doit être dans la vue brute
    • Doit être dans l’affichage de contrôle
    • Doit être dans l’affichage de contenu
    • Doit avoir une valeur de nom qui décrit l’image et sa signification

Conceptuel