Apéndice G: Puente de accesibilidad activo a automatización de la interfaz de usuario
Este apéndice contiene información sobre el puente de accesibilidad activo de Microsoft. El puente de accesibilidad activa permite a las aplicaciones que implementan la accesibilidad activa de Microsoft para acceder a las aplicaciones que implementan Automatización de la interfaz de usuario de Microsoft. Al unir Microsoft Active Accessibility and UI Automation, los clientes basados en accesibilidad activa de Microsoft, como un lector de pantalla en Windows XP, pueden interactuar mediante programación con proveedores basados en automatización de la interfaz de usuario de automatización de la interfaz de usuario, como una aplicación de Windows Presentation Foundation (WPF). Forma parte de la API native Core de Automatización de la interfaz de usuario (UIAutomationCore.dll).
El Puente de accesibilidad activa asigna propiedades y eventos de automatización de la interfaz de usuario a los de accesibilidad activa de Microsoft. En las tablas siguientes se asignan los métodos y las propiedades de la interfaz deIAccessible de Microsoft Active Accessibilitya la automatización de la interfaz de usuario. Use estas tablas para determinar las prácticas de codificación adecuadas para desarrollar el cliente basado en accesibilidad activa de Microsoft.
Propiedades de navegación y jerarquía
IAccessible (propiedad) | Propiedad de automatización de la interfaz de usuario |
---|---|
get_accChild | No implementado |
get_accChildCount | Derivado del árbol de automatización de la interfaz de usuario |
get_accParent | Derivado del árbol de automatización de la interfaz de usuario |
accNavigate | No implementado |
Propiedades y métodos descriptivos
IAccessible | Automatización de la interfaz de usuario |
---|---|
accDoDefaultAction | Consulte la tabla Tipos de control y accRole para obtener más información. |
get_accDefaultAction | Consulte la tabla Tipos de control y accRole para obtener más información. |
get_accKeyboardShortcut | AccessKeyPropertyor AcceleratorKeyProperty; Si ambos están presentes, AccessKeyProperty tiene prioridad. |
get_accName | NameProperty |
get_accRole | ControlTypeProperty. Consulte la tabla Tipos de control y accRole para obtener más información. |
get_accState | Consulte la tabla Tipos de control y accRole para obtener más información. |
get_accValue | ValueProperty; se admite en tipos de control que admiten el patrón de control Value o RangeValue patrón de control. Los valores rangeValue son coherentes con el comportamiento de accesibilidad activa de Microsoft (de 0 a 100). Los elementos de valor usan una cadena. |
put_accValue | ValueProperty; se admite en los tipos de control que admiten el patrón de control value o rangeValue patrón de control |
get_accHelp | HelpTextProperty |
get_accDescription | No implementado |
get_accHelpTopic | No implementado |
Tipos de control y accRole
El rol predeterminado de accesibilidad activa de Microsoft es ROLE_SYSTEM_CLIENT. Si no se encuentra ninguna acción predeterminada para un tipo de control, el puente de accesibilidad activo también usará los siguientes patrones de control disponibles: Invocar, ExpandCollapsey Alternar. Por ejemplo, un control groupbox no tiene ninguna acción predeterminada. Si admite ExpandCollapse, el Puente de accesibilidad activo lo usará para la acción predeterminada.
Propiedades de automatización de la interfaz de usuario y accState
accState | Propiedad de automatización de la interfaz de usuario | Cambio de estado de desencadenadores |
---|---|---|
STATE_SYSTEM_CHECKED | Para ControlType = "checkbox" use ToggleState.On. Para "radiobutton" use SelectionItemPattern::IsSelected | Sí |
STATE_SYSTEM_FOCUSABLE | IsKeyboardFocusableProperty | No |
STATE_SYSTEM_FOCUSED | HasKeyboardFocusProperty | No |
STATE_SYSTEM_PROTECTED | IsPasswordProperty | No |
STATE_SYSTEM_READONLY | IsReadOnlyProperty (patrón de control Value y patrón de control RangeValue) | No |
STATE_SYSTEM_UNAVAILABLE | IsEnabledProperty | Sí |
STATE_SYSTEM_LINKED | ControlTypeProperty = "hyperlink" | No |
STATE_SYSTEM_SELECTABLE | Se admite SelectionItemPattern | No |
STATE_SYSTEM_SELECTED | IsSelectedProperty (patrón de control SelectionItem) | No |
STATE_SYSTEM_COLLAPSED | ExpandCollapseState = Contraído | Sí |
STATE_SYSTEM_EXPANDED | ExpandCollapseState = Expandido o ParcialmenteExpanded | Sí |
STATE_SYSTEM_HASPOPUP | Elementos de menú que admiten Expandir/Contraer | 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 |
Selección y foco
IAccessible | Automatización de la interfaz de usuario |
---|---|
get_accFocus | IUIAutomation::FocusedElement |
accSelect | Consulte la tabla Propiedades de automatización de la interfaz de usuario y accSelect SELFLAGs para obtener más información. |
get_accSelection | SelectionPattern::GetSelection |
Propiedades de automatización de la interfaz de usuario y accSelect SELFLAG
accSelect SELFLAG | Propiedad de automatización de la interfaz de usuario |
---|---|
SELFLAG_NONE | No disponible |
SELFLAG_TAKFOCUS | IUIAutomationElement::SetFocus |
SELFLAG_TAKESELECTION | IUIAutomationSelectionItemPattern::Select |
SELFLAG_ADDSELECTION | IUIAutomationSelectionItemPattern::AddToSelection |
SELFLAG_TAKEREMOVESELECTION | IUIAutomationSelectionItemPattern::RemoveFromSelection |
SELFLAG_EXTENDSELECTION | No disponible |
Asignación espacial
IAccessible | Automatización de la interfaz de usuario |
---|---|
accLocation | BoundingRectangleProperty |
accHitTest | IRawElementProviderFragmentRoot::ElementProviderFromPoint |
Eventos
constantes de eventos System-Level | Automatización de la interfaz de usuario |
---|---|
EVENT_SYSTEM_MENUPOPUPSTART | UIA_MenuOpenedEventId (Nota: Debe comprobar si se trata de una ventana emergente). |
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 | No relevante |
EVENT_SYSTEM_DRAGDROPSTART | |
EVENT_SYSTEM_DRAGDROPEND | |
EVENT_SYSTEM_SWITCHSTART | No relevante |
EVENT_SYSTEM_SWITCHEND | No relevante |
EVENT_SYSTEM_MINIMIZESTART | |
EVENT_SYSTEM_MINIMIZEEND | |
EVENT_SYSTEM_FOREGROUND | |
EVENT_SYSTEM_SCROLLINGSTART | No disponible |
EVENT_SYSTEM_SCROLLINGEND | No disponible |
constantes de eventos Object-Level | Automatización de la interfaz de usuario |
---|---|
EVENT_OBJECT_FOCUS | AutomationFocusChangedEvent |
EVENT_OBJECT_VALUECHANGE | ValueProperty (patrón de control Value y patrón de control RangeValue) |
EVENT_OBJECT_SELECTION | ElementSelectedEvent (patrón de control SelectionItem) |
EVENT_OBJECT_SELECTIONADD | ElementAddedToSelectionEvent (patrón de control SelectionItem) |
EVENT_OBJECT_SELECTIONREMOVE | ElementRemovedFromSelectionEvent |
EVENT_OBJECT_SELECTIONWITHIN | EventsSelectionInvalidatedEvent |
EVENT_OBJECT_STATECHANGE | Consulte Propiedades de automatización de la interfaz de usuario y tabla accState para ver los estados que desencadenan un cambio de estado. |