Compartir a través de


Tipo de control SplitButton

En este tema se proporciona información sobre la compatibilidad de Microsoft Automatización de la interfaz de usuario con el tipo de control SplitButton.

El control de botón de división permite realizar una acción en un control y expandir el control para ver una lista de otras acciones posibles que se pueden realizar.

En las secciones siguientes se definen la estructura de árbol Automatización de la interfaz de usuario necesaria, las propiedades, los patrones de control y los eventos para el tipo de control SplitButton. Los requisitos de Automatización de la interfaz de usuario se aplican a todos los controles de botón de división en los que el marco de interfaz de usuario o la plataforma se integra Automatización de la interfaz de usuario compatibilidad con los tipos de control y los patrones de control.

En este tema se incluyen las siguientes secciones.

Estructura de árbol típica

En la tabla siguiente se muestra un control típico y una vista de contenido del árbol de Automatización de la interfaz de usuario que pertenece a los controles de botón de división y se describe lo que se puede contener en cada vista. Para más información sobre el árbol de UI Automation, vea Información general del árbol de UI Automation.

Vista de control Vista de contenido
  • SplitButton
    • Image (0 o 1)
    • Text (0 o 1)
    • Button (1 o 2)
      • Menú (0 o 1; aparece como elemento secundario de un subbotón que admite el patrón ExpandCollapse)
        • MenuItem (1 o varios)
  • SplitButton
    • Button (1 o 2)
      • MenuItem (1 o varios)

 

Propiedades relevantes

En la tabla siguiente se enumeran las propiedades Automatización de la interfaz de usuario cuyo valor o definición es especialmente relevante para el tipo de control SplitButton. Para obtener más información sobre las propiedades de Automatización de la interfaz de usuario, vea Recuperar propiedades de Automatización de la interfaz de usuario Elements.

Propiedad de automatización de interfaz de usuario Valor Notas
UIA_AutomationIdPropertyId Vea las notas. El valor de esta propiedad debe ser único entre todos los elementos del mismo nivel en la vista sin procesar del árbol de Automatización de la interfaz de usuario.
UIA_BoundingRectanglePropertyId Vea las notas. El rectángulo exterior que contiene el control completo.
UIA_ClickablePointPropertyId Vea las notas. Se admite si hay un rectángulo delimitador. Si no se puede hacer clic en todos los puntos del rectángulo delimitador, y el elemento realiza pruebas de posicionamiento especializadas, invalida y proporciona un punto en el que se puede hacer clic.
UIA_ControlTypePropertyId SplitButton Este valor es el mismo para todos los marcos de trabajo de la interfaz de usuario.
UIA_HelpTextPropertyId Vea las notas. El texto de ayuda puede indicar el resultado de la activación del botón de división, que normalmente es el mismo tipo de información que se presenta mediante un elemento de información sobre herramientas.
UIA_IsContentElementPropertyId TRUE El control de botón de división contiene información para el usuario final.
UIA_IsControlElementPropertyId TRUE El control de botón de división es visible para el usuario final.
UIA_IsKeyboardFocusablePropertyId Vea las notas. Si el control puede recibir el foco del teclado, debe admitir esta propiedad.
UIA_LabeledByPropertyId NULL Los controles de botón de expansión no tienen una etiqueta de texto estático.
UIA_LocalizedControlTypePropertyId Vea las notas. Cadena localizada correspondiente al tipo de control SplitButton . El valor predeterminado es "botón de división" para en-US o inglés (Estados Unidos).
UIA_NamePropertyId Vea las notas. Texto que se usa para etiquetar el botón de división. Cada vez que se usa una imagen para etiquetar un botón de división, se debe proporcionar texto alternativo para la propiedad Name del botón de división.

 

Patrones de control necesarios

En la tabla siguiente se enumeran los patrones de control Automatización de la interfaz de usuario necesarios para ser compatibles con todos los controles de botón de división. Para más información sobre los patrones de control, vea UI Automation Control Patterns Overview.

Patrón de control Soporte técnico Notas
IExpandCollapseProvider Obligatorio Dado que los botones divididos siempre tienen la capacidad de expandir una lista de opciones, deben admitir el patrón de control ExpandCollapse .
IInvokeProvider Obligatorio Dado que los botones divididos siempre tienen una acción predeterminada asociada al método IInvokeProvider::Invoke , deben admitir el patrón de control Invoke .

 

Eventos necesarios

En la tabla siguiente se enumeran los eventos de Automatización de la interfaz de usuario que se necesitan controles de botón divididos para admitir. Para más información sobre los eventos, vea UI Automation Events Overview.

Evento de Automatización de la interfaz de usuario Notas
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId evento de cambio de propiedad.
UIA_ExpandCollapseExpandCollapseStatePropertyId evento de cambio de propiedad.
UIA_Invoke_InvokedEventId
UIA_IsEnabledPropertyId evento de cambio de propiedad. Si el control admite la propiedad IsEnabled , debe admitir este evento.
UIA_IsOffscreenPropertyId evento de cambio de propiedad. Si el control admite la propiedad IsOffscreen , debe admitir este evento.
UIA_StructureChangedEventId

 

Ejemplo de tipo de control SplitButton

En la imagen siguiente se muestra un control que implementa el tipo de control SplitButton .

captura de pantalla que muestra un ejemplo de un control splitbutton

árbol de Automatización de la interfaz de usuario: vista de control árbol de Automatización de la interfaz de usuario: vista de contenido
  • SplitButton "Nombre" (Invoke, ExpandCollapse)
    • Botón "Más opción" (Invocar)
      • Menú
        • MenuItem
        • ...
  • SplitButton "Nombre" (Invoke, ExpandCollapse)
    • Botón "Más opción" (Invocar)
      • Menú
        • MenuItem
        • ...

 

Conceptual

Información general sobre tipos de control de UI Automation

Información general sobre UI Automation