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

 

Proprietà e metodi descrittivi

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

 

Tipi di controllo e accRole

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.

tipo di controllo Automazione interfaccia utente accRole Azione predefinita
Button ROLE_SYSTEM_PUSHBUTTON Premere
Calendario ROLE_SYSTEM_CLIENT Nessuno
CheckBox ROLE_SYSTEM_CHECKBUTTON Selezionare/Deselezionare (attiva/disattiva)
ComboBox ROLE_SYSTEM_COMBOBOX Nessuno
Personalizzato ROLE_SYSTEM_CLIENT Nessuno
DataGrid ROLE_SYSTEM_LIST Nessuno
DataItem ROLE_SYSTEM_LISTITEM Nessuno
Documento ROLE_SYSTEM_DOCUMENT Nessuno
Modifica ROLE_SYSTEM_TEXT Nessuno
Gruppo ROLE_SYSTEM_GROUPING Nessuno
Intestazione ROLE_SYSTEM_LIST Nessuno
HeaderItem ROLE_SYSTEM_COLUMNHEADER Fare clic su
Collegamento ipertestuale ROLE_SYSTEM_LINK Jump (esegue il mapping a Invoke)
Immagine ROLE_SYSTEM_GRAPHIC Nessuno
Elenco ROLE_SYSTEM_LIST Nessuno
ListItem ROLE_SYSTEM_LISTITEM Doppio clic
Menu ROLE_SYSTEM_MENUPOPUP Nessuno
MenuBar ROLE_SYSTEM_MENUBAR Nessuno
MenuItem ROLE_SYSTEM_MENUITEM Eseguire o Apri/Chiudi per le voci di menu con elementi figlio.
Riquadro ROLE_SYSTEM_PANE Nessuno
ProgressBar ROLE_SYSTEM_PROGRESSBAR Nessuno
RadioButton ROLE_SYSTEM_RADIOBUTTON Controllo
ScrollBar ROLE_SYSTEM_SCROLLBAR Nessuno
Dispositivo di scorrimento ROLE_SYSTEM_SLIDER Nessuno
Spinner ROLE_SYSTEM_SPINBUTTON Nessuno
SplitButton ROLE_SYSTEM_SPLITBUTTON Nessuno
StatusBar ROLE_SYSTEM_STATUSBAR Nessuno
TAB ROLE_SYSTEM_PAGETABLIST Nessuno
TabItem ROLE_SYSTEM_PAGETAB Commutatore
Tabella ROLE_SYSTEM_TABLE Nessuno
Text ROLE_SYSTEM_STATICTEXT Nessuno
Pollice ROLE_SYSTEM_INDICATOR Nessuno
Titlebar ROLE_SYSTEM_TITLEBAR Nessuno
Barra degli strumenti ROLE_SYSTEM_TOOLBAR Nessuno
ToolTip ROLE_SYSTEM_TOOLTIP Nessuno
Albero ROLE_SYSTEM_OUTLINE Nessuno
TreeItem ROLE_SYSTEM_OUTLINEITEM Espandere o comprimere
Window ROLE_SYSTEM_WINDOW Nessuno

 

proprietà Automazione interfaccia utente e accState

accState proprietà Automazione interfaccia utente Modifica dello stato dei trigger
STATE_SYSTEM_CHECKED Per ControlType = "checkbox" usare ToggleState.On. Per "radiobutton" usare SelectionItemPattern::IsSelected
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
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
STATE_SYSTEM_EXPANDED ExpandCollapseState = Espanso o ParzialmenteExpanded
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

 

Selezione e messa a fuoco

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

 

Automazione interfaccia utente proprietà e accSelect SELFLAGs

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

 

Mapping spaziale

Iaccessible Automazione interfaccia utente
accLocation BoundingRectangleProperty
accHitTest IRawElementProviderFragmentRoot::ElementProviderFromPoint

 

Eventi

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