Type de contrôle ScrollBar

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

Les contrôles de barre de défilement permettent à un utilisateur de faire défiler le contenu d’une fenêtre ou d’un conteneur d’élément. Le contrôle se compose d’un ensemble de boutons et d’un contrôle de pouce.

Les sections suivantes définissent les UI Automation nécessaires à l’arborescence, aux propriétés, aux modèles de contrôle et aux événements pour le type de contrôle ScrollBar. Les exigences UI Automation s’appliquent à tous les contrôles de barre de défilement dans lesquels l’infrastructure/la plateforme d’interface utilisateur intègre UI Automation prise en charge des types de contrôles et des modèles de contrôle.

Cette rubrique contient les sections suivantes.

Arborescence standard

Le tableau suivant illustre une vue de contrôle et de contenu classique de l’arborescence UI Automation qui se rapporte aux contrôles de barre de défilement et décrit ce qui peut être contenu dans chaque vue. Pour plus d’informations sur l’arborescence UI Automation, consultez Vue d’ensemble de l’arborescence UI Automation.

Affichage de contrôle Affichage de contenu
  • ScrollBar
    • Bouton (0, 2 ou 4)
    • Pouce (0 ou 1)
Non applicable. (Le contrôle de barre de défilement n’a pas de contenu.)

 

Le contrôle de barre de défilement peut avoir zéro à cinq enfants. Étant donné que la sous-arborescence a plusieurs contrôles de bouton, l’élément doit définir une valeur de UIA_AutomationIdPropertyId spécifique à chaque élément pour les rendre détectables pour les outils de test automatisé.

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 adaptée aux contrôles de barre de défilement. Notez qu’un contrôle de barre de défilement n’a jamais de contenu ; ses fonctionnalités sont exposées via le modèle de contrôle Scroll , qui est pris en charge sur le conteneur en cours de défilement.

Pour plus d’informations sur UI Automation propriétés, consultez Récupération 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 dans la vue brute de l’arborescence UI Automation.
UIA_BoundingRectanglePropertyId Consultez les remarques. Rectangle externe qui contient l’ensemble du contrôle.
UIA_ClickablePointPropertyId NaN Le contrôle de barre de défilement n’a pas de points interactifs.
UIA_ControlTypePropertyId ScrollBar Cette valeur est la même pour toutes les infrastructures. Les barres de défilement qui fonctionnent comme des curseurs doivent utiliser le type de contrôle Slider .
UIA_IsContentElementPropertyId FAUX Le contrôle de barre de défilement n’est jamais un élément de contenu. Si la barre de défilement est un contrôle autonome, elle doit remplir le type de contrôle Slider et retourner UIA_SliderControlTypeId pour la propriété IUIAutomationElement::CurrentControlType (ou CachedControlType).
UIA_IsControlElementPropertyId true Le contrôle de barre de défilement est toujours inclus dans la vue 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é. Un contrôle de barre de défilement prend rarement le focus, mais lorsqu’il le fait, le focus doit rester sur le contrôle de barre de défilement lui-même, et non sur les boutons enfants ou le pouce. L’utilisateur doit être en mesure d’effectuer toutes les actions de défilement à l’aide des touches Flèche haut et Flèche bas (ou Flèche droite et Flèche gauche), ou des touches Page haut et Page bas.
UIA_LabeledByPropertyId NULL Les barres de défilement n’ont pas d’étiquettes.
UIA_LocalizedControlTypePropertyId Consultez les remarques. Chaîne localisée correspondant au type de contrôle ScrollBar . La valeur par défaut est « barre de défilement » pour en-US ou english (États-Unis).
UIA_NamePropertyId NULL Le contrôle de barre de défilement n’a pas d’éléments de contenu et la propriété UIA_NamePropertyId n’a pas besoin d’être définie.
UIA_OrientationPropertyId Consultez les remarques. Le contrôle de barre de défilement doit toujours exposer son orientation horizontale ou verticale.

 

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 par tous les contrôles de barre de défilement. Pour plus d’informations sur les modèles de contrôle, consultez UI Automation Control Patterns Overview.

Notes

Lorsqu’une barre de défilement est utilisée comme contrôle pour la manipulation de la souris uniquement, elle ne prend pas en charge les modèles de contrôle. S’il est utilisé comme contrôle de curseur dans une application, le type de contrôle Slider doit lui être attribué.

 

Modèle de contrôle Support Notes
IRangeValueProvider Dépend Le modèle de contrôle RangeValue doit être pris en charge uniquement si le modèle de contrôle Scroll n’est pas pris en charge sur le conteneur qui a la barre de défilement.
IScrollProvider Jamais Le modèle de contrôle Scroll n’est jamais directement pris en charge sur la barre de défilement.

 

Événements obligatoires

Le tableau suivant répertorie les événements UI Automation que les contrôles de barre de défilement doivent prendre en charge. Pour plus d’informations sur les événements, consultez UI Automation Events Overview.

Événement UI Automation Notes
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId’événement de modification de propriété.
UIA_IsEnabledPropertyId événement de modification de propriété. Si le contrôle prend en charge la propriété IsEnabled , il doit prendre en charge cet événement.
UIA_IsOffscreenPropertyId événement de modification de propriété. Si le contrôle prend en charge la propriété IsOffscreen , il doit prendre en charge cet événement.
UIA_StructureChangedEventId
UIA_RangeValueValuePropertyId événement de modification de propriété. Si le contrôle prend en charge le modèle de contrôle RangeValue , il doit prendre en charge cet événement.

 

Conceptuel

Vue d'ensemble des types de contrôle UI Automation

Vue d'ensemble d'UI Automation