Appendice G: Bridge di accessibilità attiva per Automazione interfaccia utente
Questa appendice contiene informazioni su Microsoft Active Accessibility Bridge. Active Accessibility Bridge consente alle applicazioni che implementano Microsoft Active Accessibility di accedere alle applicazioni che implementano Microsoft Automazione interfaccia utente. Grazie al bridging di Microsoft Active Accessibility e Automazione interfaccia utente insieme, i client basati sull'accessibilità Di Microsoft Active, ad esempio un utilità per la lettura dello schermo in Windows XP, possono interagire a livello di codice con provider basati su Automazione interfaccia utente di Automazione interfaccia utente, ad esempio un Windows Presentation Foundation applicazione (WPF). Fa parte dell'API nativa di Automazione interfaccia utente (UIAutomationCore.dll).
Active Accessibility Bridge esegue il mapping Automazione interfaccia utente proprietà ed eventi a quelli di Microsoft Active Accessibility. Nelle tabelle seguenti vengono mappati i metodi e le proprietà dell'interfaccia IAccessible di Microsoft Active Accessibility a Automazione interfaccia utente. Usare queste tabelle per determinare le procedure di codifica appropriate per lo sviluppo del client basato sull'accessibilità di Microsoft Active.
Proprietà IAccessible | proprietà Automazione interfaccia utente |
---|---|
get_accChild | Non implementato |
get_accChildCount | Derivato dall'albero di Automazione interfaccia utente |
get_accParent | Derivato dall'albero di Automazione interfaccia utente |
accNavigate | Non implementato |
Iaccessible | Automazione interfaccia utente |
---|---|
accDoDefaultAction | Per informazioni dettagliate, vedere la tabella Tipi di controllo e accRole. |
get_accDefaultAction | Per informazioni dettagliate, vedere la tabella Tipi di controllo e accRole. |
get_accKeyboardShortcut | AccessKeyPropertyor AcceleratorKeyProperty; se entrambi presenti, AccessKeyProperty ha la precedenza. |
get_accName | NameProperty |
get_accRole | ControlTypeProperty. Per informazioni dettagliate, vedere la tabella Tipi di controllo e accRole. |
get_accState | Per informazioni dettagliate, vedere la tabella Tipi di controllo e accRole. |
get_accValue | ValueProperty; supportato nei tipi di controllo che supportano il pattern di controllo Value o il pattern di controllo RangeValue . I valori RangeValue sono coerenti con il comportamento di Microsoft Active Accessibility (da 0 a 100). Gli elementi dei valori usano una stringa. |
put_accValue | ValueProperty; supportato nei tipi di controllo che supportano il pattern di controllo Value o il pattern di controllo RangeValue |
get_accHelp | HelpTextProperty |
get_accDescription | Non implementato |
get_accHelpTopic | Non implementato |
Il ruolo predefinito Microsoft Active Accessibility è ROLE_SYSTEM_CLIENT. Se non viene trovata alcuna azione predefinita per un tipo di controllo, Active Accessibility Bridge userà anche i modelli di controllo disponibili seguenti: Invoke, ExpandCollapse e Toggle. Ad esempio, un controllo groupbox non ha alcuna azione predefinita. Se supporta ExpandCollapse, il bridge di accessibilità attiva userà tale valore per l'azione predefinita.
accState | proprietà Automazione interfaccia utente | Modifica dello stato dei trigger |
---|---|---|
STATE_SYSTEM_CHECKED | Per ControlType = "checkbox" usare ToggleState.On. Per "radiobutton" usare SelectionItemPattern::IsSelected | Sì |
STATE_SYSTEM_FOCUSABLE | IsKeyboardFocusableProperty | No |
STATE_SYSTEM_FOCUSED | HasKeyboardFocusProperty | No |
STATE_SYSTEM_PROTECTED | IsPasswordProperty | No |
STATE_SYSTEM_READONLY | IsReadOnlyProperty (pattern di controllo valore e pattern di controllo RangeValue) | No |
STATE_SYSTEM_UNAVAILABLE | IsEnabledProperty | Sì |
STATE_SYSTEM_LINKED | ControlTypeProperty = "hyperlink" | No |
STATE_SYSTEM_SELECTABLE | SelectionItemPattern è supportato | No |
STATE_SYSTEM_SELECTED | IsSelectedProperty (modello di controllo SelectionItem) | No |
STATE_SYSTEM_COLLAPSED | ExpandCollapseState = Compresso | Sì |
STATE_SYSTEM_EXPANDED | ExpandCollapseState = Espanso o ParzialmenteExpanded | Sì |
STATE_SYSTEM_HASPOPUP | Voci di menu che supportano Espandi/Comprimi | No |
STATE_SYSTEM_MIXED | ToggleState = Indeterminate | No |
STATE_SYSTEM_SIZEABLE | IUIAutomationTransformPattern::CanResize | No |
STATE_SYSTEM_MOVEABLE | IUIAutomationTransformPattern::CanMove | No |
STATE_SYSTEM_MULTISELECTABLE | IUIAutomationSelectionPattern::CanSelectMultiple | No |
Iaccessible | Automazione interfaccia utente |
---|---|
get_accFocus | IUIAutomation::FocusElement |
accSelect | Per informazioni dettagliate, vedere la tabella proprietà Automazione interfaccia utente e accSelect SELFLAGs. |
get_accSelection | SelectionPattern::GetSelection |
accSelect SELFLAGs | Automazione interfaccia utente, proprietà |
---|---|
SELFLAG_NONE | Non disponibile |
SELFLAG_TAKFOCUS | IUIAutomationElement::SetFocus |
SELFLAG_TAKESELECTION | IUIAutomationSelectionItemPattern::Select |
SELFLAG_ADDSELECTION | IUIAutomationSelectionItemPattern::AddToSelection |
SELFLAG_TAKEREMOVESELECTION | IUIAutomationSelectionItemPattern::RemoveFromSelection |
SELFLAG_EXTENDSELECTION | Non disponibile |
Iaccessible | Automazione interfaccia utente |
---|---|
accLocation | BoundingRectangleProperty |
accHitTest | IRawElementProviderFragmentRoot::ElementProviderFromPoint |
Costanti evento System-Level | Automazione interfaccia utente |
---|---|
EVENT_SYSTEM_MENUPOPUPSTART | UIA_MenuOpenedEventId (Nota: è necessario verificare se si tratta di una finestra popup). |
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 rilevante |
EVENT_SYSTEM_DRAGDROPSTART | |
EVENT_SYSTEM_DRAGDROPEND | |
EVENT_SYSTEM_SWITCHSTART | Non rilevante |
EVENT_SYSTEM_SWITCHEND | Non rilevante |
EVENT_SYSTEM_MINIMIZESTART | |
EVENT_SYSTEM_MINIMIZEEND | |
EVENT_SYSTEM_FOREGROUND | |
EVENT_SYSTEM_SCROLLINGSTART | Non disponibile |
EVENT_SYSTEM_SCROLLINGEND | Non disponibile |
Costanti evento Object-Level | Automazione interfaccia utente |
---|---|
EVENT_OBJECT_FOCUS | AutomationFocusChangedEvent |
EVENT_OBJECT_VALUECHANGE | ValueProperty (modello di controllo valore e modello di controllo RangeValue) |
EVENT_OBJECT_SELECTION | ElementSelectedEvent (modello di controllo SelectionItem) |
EVENT_OBJECT_SELECTIONADD | ElementAddedToSelectionEvent (modello di controllo SelectionItem) |
EVENT_OBJECT_SELECTIONREMOVE | ElementRemovedFromSelectionEvent |
EVENT_OBJECT_SELECTIONWITHIN | EventsSelectionInvalidatedEvent |
EVENT_OBJECT_STATECHANGE | Vedere Automazione interfaccia utente Proprietà e tabella accState per gli stati che attivano una modifica dello stato |