Type de contrôle de bouton

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

Un bouton est un objet avec lequel un utilisateur interagit pour effectuer une action. Tel est le cas des boutons OK et Annuler d’une boîte de dialogue. Le contrôle button est un contrôle simple à exposer, car il correspond à une commande unique que l’utilisateur veut exécuter.

Les sections suivantes définissent les UI Automation arborescence, les propriétés, les modèles de contrôle et les événements nécessaires pour le type de contrôle Button. Les exigences UI Automation s’appliquent à tous les contrôles de bouton où l’infrastructure/plateforme de l’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.

Structure d’arborescence classique

Le tableau suivant illustre une vue de contrôle et de contenu typique de l’arborescence UI Automation relative aux contrôles de bouton 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
  • Bouton
    • Image (0 ou plus)
    • Text (0 ou plus)
  • Bouton

 

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 qui implémentent le type de contrôle Button (tels que les contrôles de bouton). Pour plus d’informations sur les propriétés UI Automation, consultez Récupération des propriétés à partir d’éléments UI Automation.

Propriété UI Automation Valeur Notes
UIA_AcceleratorKeyPropertyId Consultez les remarques. Un contrôle de bouton prend généralement en charge une touche d’accélérateur pour permettre à l’utilisateur final d’effectuer rapidement l’action représentée par le bouton à partir du clavier.
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 Consultez les remarques. Pris en charge s’il existe un rectangle englobant. Si tous les points du rectangle englobant ne sont pas cliquables et que l’élément effectue des tests d’accès spécialisés, remplacez et fournissez un point cliquable.
UIA_ControlTypePropertyId Button
UIA_HelpTextPropertyId Consultez les remarques. Le texte d’aide doit indiquer le résultat final de l’activation du bouton. Il s’agit généralement du même type d’informations présentées via une info-bulle.
UIA_IsContentElementPropertyId true Le contrôle de bouton doit toujours être du contenu.
UIA_IsControlElementPropertyId true Le contrôle de bouton doit toujours être un contrôle.
UIA_IsKeyboardFocusablePropertyId Consultez les remarques. Si le contrôle peut recevoir le focus clavier, il doit prendre en charge cette propriété.
UIA_LabeledByPropertyId Null Les contrôles Button sont étiquetés automatiquement par leur contenu.
UIA_LocalizedControlTypePropertyId Consultez les remarques. Chaîne localisée correspondant au type de contrôle Button . La valeur par défaut est « button » pour en-US ou English (États-Unis).
UIA_NamePropertyId Consultez les remarques. Le nom du contrôle de bouton est le texte utilisé pour l’étiqueter. Chaque fois qu’une image est utilisée pour étiqueter un bouton, un texte de remplacement doit être fourni pour la propriété Name du bouton.

 

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

Modèle de contrôle/Propriété de modèle Prise en charge/valeur Notes
IExpandCollapseProvider Consultez les remarques. Lorsqu’un bouton est hébergé en tant qu’enfant d’un bouton fractionné, le bouton enfant peut prendre en charge le modèle de contrôle ExpandCollapse au lieu du modèle de contrôle Invoke ou Toggle . Le modèle de contrôle ExpandCollapse peut être utilisé pour ouvrir ou fermer un menu ou une autre sous-structure associée à l’élément button.
IInvokeProvider Consultez les remarques. Tous les boutons doivent prendre en charge le modèle de contrôle Invoke ou le modèle de contrôle Bascule , mais pas les deux. Le modèle de contrôle Invoke doit être pris en charge lorsque le bouton exécute une commande à la demande de l’utilisateur. Cette commande correspond à une seule opération, par exemple, Couper, Copier, Coller ou Supprimer.
IToggleProvider Consultez les remarques. Tous les boutons doivent prendre en charge le modèle de contrôle Invoke ou le modèle de contrôle Bascule , mais pas les deux. Le modèle de contrôle Bascule doit être pris en charge si le bouton peut parcourir une série de trois états maximum. En général, cela est considéré comme un commutateur d’activation/désactivation pour des fonctionnalités spécifiques.

 

Événements obligatoires

Le tableau suivant répertorie les événements UI Automation que les contrôles de bouton 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_Invoke_InvokedEventId Si le contrôle prend en charge le modèle de contrôle Invoke , il doit prendre en charge cet événement.
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_NamePropertyId événement de modification de propriété.
UIA_StructureChangedEventId
UIA_ToggleToggleStatePropertyId’événement de modification de propriété. Si le contrôle prend en charge le modèle de contrôle Bascule , 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