Annexe G : Pont d’accessibilité actif pour UI Automation
Cette annexe contient des informations sur Microsoft Active Accessibility Bridge. Le pont d’accessibilité active permet aux applications qui implémentent Microsoft Active Accessibility d’accéder aux applications qui implémentent Microsoft UI Automation. En reliant Microsoft Active Accessibility et UI Automation ensemble, les clients basés sur l’accessibilité Active Microsoft, tels qu’un lecteur d’écran sur Windows XP, peuvent interagir par programmation avec des fournisseurs de UI Automation de UI Automation, tels qu’un Windows Presentation Foundation Application (WPF). Il fait partie de l’API UI Automation Native Core (UIAutomationCore.dll).
Le pont d’accessibilité active mappe UI Automation propriétés et événements à ceux de Microsoft Active Accessibility. Les tableaux suivants mappent les méthodes et propriétés de l’interface IAccessible de Microsoft Active Accessibility à UI Automation. Utilisez ces tableaux pour déterminer les pratiques de codage appropriées pour le développement de votre client Microsoft Active Accessibility.
Propriétés de navigation et de hiérarchie
Propriété IAccessible | Propriété UI Automation |
---|---|
get_accChild | Non implémenté |
get_accChildCount | Dérivé de UI Automation arborescence |
get_accParent | Dérivé de UI Automation arborescence |
accNavigate | Non implémenté |
Propriétés et méthodes descriptives
Iaccessible | Automatisation de l’interface utilisateur |
---|---|
accDoDefaultAction | Pour plus d’informations, consultez le tableau Types de contrôles et accRole. |
get_accDefaultAction | Pour plus d’informations, consultez le tableau Types de contrôles et accRole. |
get_accKeyboardShortcut | AccessKeyPropertyor AcceleratorKeyProperty; si les deux sont présents, AccessKeyProperty est prioritaire. |
get_accName | NameProperty |
get_accRole | ControlTypeProperty. Pour plus d’informations, consultez le tableau Types de contrôles et accRole. |
get_accState | Pour plus d’informations, consultez le tableau Types de contrôles et accRole. |
get_accValue | ValueProperty; pris en charge sur les types de contrôles qui prennent en charge le modèle de contrôle Value ou le modèle de contrôle rangeValue . Les valeurs RangeValue sont cohérentes avec le comportement Microsoft Active Accessibility (0 à 100). Les éléments de valeur utilisent une chaîne. |
put_accValue | ValueProperty; pris en charge sur les types de contrôles qui prennent en charge le modèle de contrôle Value ou le modèle de contrôle RangeValue |
get_accHelp | HelpTextProperty |
get_accDescription | Non implémenté |
get_accHelpTopic | Non implémenté |
Types de contrôle et accRole
Le rôle par défaut Microsoft Active Accessibility est ROLE_SYSTEM_CLIENT. Si aucune action par défaut n’est trouvée pour un type de contrôle, le pont d’accessibilité actif utilise également les modèles de contrôle disponibles suivants : Invoke, ExpandCollapse et Toggle. Par exemple, un contrôle groupbox n’a aucune action par défaut. S’il prend en charge ExpandCollapse, le pont d’accessibilité actif l’utilise pour l’action par défaut.
propriétés UI Automation et accState
accState | Propriété UI Automation | Déclencheurs changement d’état |
---|---|---|
STATE_SYSTEM_CHECKED | Pour ControlType = « case à cocher », utilisez ToggleState.On. Pour « radiobutton », utilisez SelectionItemPattern::IsSelected | Oui |
STATE_SYSTEM_FOCUSABLE | IsKeyboardFocusableProperty | Non |
STATE_SYSTEM_FOCUSED | HasKeyboardFocusProperty | Non |
STATE_SYSTEM_PROTECTED | IsPasswordProperty | Non |
STATE_SYSTEM_READONLY | IsReadOnlyProperty (modèle de contrôle value et modèle de contrôle RangeValue) | Non |
STATE_SYSTEM_UNAVAILABLE | IsEnabledProperty | Oui |
STATE_SYSTEM_LINKED | ControlTypeProperty = « hyperlink » | Non |
STATE_SYSTEM_SELECTABLE | SelectionItemPattern est pris en charge | Non |
STATE_SYSTEM_SELECTED | IsSelectedProperty (modèle de contrôle SelectionItem) | Non |
STATE_SYSTEM_COLLAPSED | ExpandCollapseState = Réduit | Oui |
STATE_SYSTEM_EXPANDED | ExpandCollapseState = Expanded ou PartiellementExpanded | Oui |
STATE_SYSTEM_HASPOPUP | Éléments de menu qui prennent en charge Développer/Réduire | Non |
STATE_SYSTEM_MIXED | ToggleState = Indéterminé | Non |
STATE_SYSTEM_SIZEABLE | IUIAutomationTransformPattern::CanResize | Non |
STATE_SYSTEM_MOVEABLE | IUIAutomationTransformPattern::CanMove | Non |
STATE_SYSTEM_MULTISELECTABLE | IUIAutomationSelectionPattern::CanSelectMultiple | Non |
Sélection et focus
Iaccessible | Automatisation de l’interface utilisateur |
---|---|
get_accFocus | IUIAutomation::FocusedElement |
accSelect | Pour plus d’informations, consultez la table propriétés UI Automation et accSelect SELFLAGs. |
get_accSelection | SelectionPattern::GetSelection |
UI Automation Properties et accSelect SELFLAGs
accSelect SELFLAGs | Propriété UI Automation |
---|---|
SELFLAG_NONE | Non disponible |
SELFLAG_TAKFOCUS | IUIAutomationElement::SetFocus |
SELFLAG_TAKESELECTION | IUIAutomationSelectionItemPattern::Select |
SELFLAG_ADDSELECTION | IUIAutomationSelectionItemPattern::AddToSelection |
SELFLAG_TAKEREMOVESELECTION | IUIAutomationSelectionItemPattern::RemoveFromSelection |
SELFLAG_EXTENDSELECTION | Non disponible |
Mappage spatial
Iaccessible | Automatisation de l’interface utilisateur |
---|---|
accLocation | BoundingRectangleProperty |
accHitTest | IRawElementProviderFragmentRoot::ElementProviderFromPoint |
Événements
constantes d’événement System-Level | Automatisation de l’interface utilisateur |
---|---|
EVENT_SYSTEM_MENUPOPUPSTART | UIA_MenuOpenedEventId (Remarque : Doit case activée s’il s’agit d’une fenêtre contextuelle.) |
EVENT_SYSTEM_MENUPOPUPEND | UIA_MenuClosedEventId |
EVENT_SYSTEM_MENUSTART | UIA_MenuModeStartEventId |
EVENT_SYSTEM_MENUEND | UIA_MenuModeEndEventId |
EVENT_SYSTEM_SOUND | |
EVENT_SYSTEM_ALERT | |
EVENT_SYSTEM_CAPTURESTART | |
EVENT_SYSTEM_CAPTUREEND | |
EVENT_SYSTEM_DIALOGSTART | |
EVENT_SYSTEM_DIALOGEND | |
EVENT_SYSTEM_MOVESIZESTART | |
EVENT_SYSTEM_MOVESIZEEND | |
EVENT_SYSTEM_CONTEXTHELPSTART | |
EVENT_SYSTEM_CONTEXTHELPEND | Non pertinent |
EVENT_SYSTEM_DRAGDROPSTART | |
EVENT_SYSTEM_DRAGDROPEND | |
EVENT_SYSTEM_SWITCHSTART | Non pertinent |
EVENT_SYSTEM_SWITCHEND | Non pertinent |
EVENT_SYSTEM_MINIMIZESTART | |
EVENT_SYSTEM_MINIMIZEEND | |
EVENT_SYSTEM_FOREGROUND | |
EVENT_SYSTEM_SCROLLINGSTART | Non disponible |
EVENT_SYSTEM_SCROLLINGEND | Non disponible |
constantes d’événement Object-Level | Automatisation de l’interface utilisateur |
---|---|
EVENT_OBJECT_FOCUS | AutomationFocusChangedEvent |
EVENT_OBJECT_VALUECHANGE | ValueProperty (modèle de contrôle de valeur et modèle de contrôle RangeValue) |
EVENT_OBJECT_SELECTION | ElementSelectedEvent (modèle de contrôle SelectionItem) |
EVENT_OBJECT_SELECTIONADD | ElementAddedToSelectionEvent (modèle de contrôle SelectionItem) |
EVENT_OBJECT_SELECTIONREMOVE | ElementRemovedFromSelectionEvent |
EVENT_OBJECT_SELECTIONWITHIN | ÉvénementsSelectionInvalidatedEvent |
EVENT_OBJECT_STATECHANGE | Consultez UI Automation propriétés et la table accState pour connaître les états qui déclenchent un changement d’état. |