Type de contrôle MenuBar
Cette rubrique fournit des informations sur la prise en charge de Microsoft UI Automation pour le type de contrôle MenuBar .
Les contrôles de barre de menus sont un exemple de contrôles qui implémentent le type de contrôle MenuBar MenuBar. Les barres de menus permettent aux utilisateurs d’activer des commandes et des options contenues dans une application.
Les sections suivantes définissent la structure d’arborescence, les propriétés, les modèles de contrôle et les événements UI Automation requis pour le type de contrôle MenuBar. Les exigences UI Automation s’appliquent à tous les contrôles de barre de menus où l’infrastructure/la 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
- propriétés pertinentes
- modèles de contrôle requis
- événements obligatoires
- rubriques connexes
Structure d’arborescence classique
Le tableau suivant illustre un contrôle et une vue de contenu typiques de l’arborescence UI Automation qui se rapporte aux contrôles de barre de menus et décrit ce qui peut être contenu dans chaque affichage. Pour plus d’informations sur l’arborescence UI Automation, consultez vue d’ensemble de l’arborescence UI Automation.
Vue contrôle | Affichage de contenu |
---|---|
|
|
Un contrôle de barre de menus apparaît toujours dans l’affichage contrôle, mais pas dans l’affichage de contenu, car il ne transmet généralement pas d’informations significatives à l’utilisateur final (sauf si l’application contient plusieurs barres de menus).
Les clients UI Automation peuvent écouter l’événement UIA_MenuModeStartEventId pour s’assurer qu’ils sont avertis de manière cohérente lorsque l’interface utilisateur entre en mode de menu. Lorsque l’application est en mode menu, toutes les entrées du clavier peuvent être capturées pour la navigation dans le menu (par exemple, la saisie de « s » peut appeler le menu Enregistrer au lieu de taper le caractère dans la zone cliente de l’application). L’événement UIA_MenuModeStartEventId doit précéder le premier événement UIA_MenuOpenedEventId pour garantir la cohérence logique. L’événement UIA_MenuModeEndEventId suit le dernier événement UIA_MenuClosedEventId. Cliquer sur un élément de menu peut également déclencher immédiatement l’événement UIA_MenuModeStartEventId, suivi d’un événement UIA_MenuOpenedEventId.
Un contrôle de barre de menus peut contenir d’autres contrôles, tels que les contrôles d’édition et les zones de liste modifiable, dans sa structure. Ces contrôles supplémentaires correspondent aux « autres contrôles » répertoriés ci-dessus dans les vues de contrôle et de contenu.
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 le type de contrôle MenuBar . Pour plus d’informations sur les propriétés UI Automation, consultez Récupération des propriétés à partir d’UI Automation Elements.
UI Automation, propriété | Valeur | Notes |
---|---|---|
UIA_AcceleratorKeyPropertyId | ZÉRO | Les barres de menus n’ont généralement pas de touches d’accélérateur. |
UIA_AccessKeyPropertyId | « Alt » | Appuyer sur la touche Alt doit généralement porter le focus sur la barre de menus au sein de l’application. |
UIA_BoundingRectanglePropertyId | Consultez les notes. | La valeur exposée par cette propriété doit inclure tous les contrôles contenus dans celui-ci. |
UIA_ControlTypePropertyId | MenuBar | |
UIA_IsContentElementPropertyId | FAUX | Le contrôle de barre de menus n’est pas inclus dans l’affichage contenu de l’arborescence UI Automation. |
UIA_IsControlElementPropertyId | VRAI | Le contrôle de barre de menus est toujours inclus dans l’affichage contrôle de l’arborescence UI Automation. |
UIA_IsKeyboardFocusablePropertyId | VRAI | Les contrôles de barre de menus sont focusables au clavier, car les contrôles qu’ils contiennent peuvent prendre le focus clavier. |
UIA_IsOffscreenPropertyId | Consultez les notes. | La valeur de cette propriété dépend de l’affichage du contrôle à l’écran. |
UIA_LabeledByPropertyId | ZÉRO | Les contrôles de barre de menus n’ont généralement pas d’étiquette. |
UIA_LocalizedControlTypePropertyId | Consultez les notes. | Chaîne localisée correspondant au type de contrôle MenuBar. La valeur par défaut est « barre de menus » pour en-US ou l’anglais (États-Unis). |
UIA_NamePropertyId | Consultez les notes. | Le contrôle de barre de menus n’a pas besoin d’un nom, sauf si une application a plusieurs barres de menus. S’il existe plusieurs barres de menus dans une application, utilisez cette propriété pour exposer des noms distinctifs, tels que « Mise en forme » ou « Plan ». |
UIA_OrientationPropertyId | Dépend | Cette propriété expose si le contrôle de barre de menus est horizontal ou vertical. |
Modèles de contrôle requis
Le tableau suivant répertorie les modèles de contrôle UI Automation requis pour être pris en charge par les contrôles de barre de menus. Pour plus d’informations sur les modèles de contrôle, consultez Vue d’ensemble des modèles de contrôle UI Automation.
Modèle de contrôle | Soutien | Notes |
---|---|---|
IExpandCollapseProvider | Dépend | Si le contrôle peut être développé ou réduit, il doit implémenter le modèle de contrôle ExpandCollapse. |
IDockProvider | Dépend | Si le contrôle peut être ancré à différentes parties de l’écran, il doit implémenter le modèle de contrôle Dock. |
ITransformProvider | Dépend | Si le contrôle peut être redimensionné, pivoté ou déplacé, il doit implémenter le modèle de contrôle Transform. |
Événements obligatoires
Le tableau suivant répertorie les événements UI Automation requis pour prendre en charge les contrôles de barre de menus. Pour plus d’informations sur les événements, consultez vue d’ensemble des événements UI Automation.
Événement UI Automation | Notes |
---|---|
UIA_AutomationFocusChangedEventId | |
UIA_BoundingRectanglePropertyId événement de modification de propriété. | |
UIA_ExpandCollapseExpandCollapseStatePropertyId événement de modification de propriété. | Si le contrôle prend en charge le modèle de contrôle ExpandCollapse, 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_StructureChangedEventId |
Rubriques connexes
-
conceptuelle
-
Vue d’ensemble UI Automation