Tipo de control SemanticZoom

En este tema se proporciona información sobre la compatibilidad de automatización de la interfaz de usuario con el tipo de control SemanticZoom .

El zoom semántico es una técnica introducida en Windows 8 para presentar y navegar por grandes conjuntos de datos o contenido relacionados dentro de una sola vista, como un álbum de fotos, una lista de aplicaciones o una libreta de direcciones. El zoom semántico usa dos modos distintos de clasificación, o niveles de zoom, para organizar y presentar el contenido. El modo de bajo nivel (o zoom) muestra elementos en una estructura plana y "todo hacia arriba" ; y el modo de alto nivel (o alejada) muestra elementos en grupos, lo que permite al usuario navegar y examinar rápidamente el contenido. Por ejemplo, acercar una lista de ciudades podría cambiar a una lista de estados que contienen esas ciudades. Acercar una lista de programas podría cambiar a una lista de grupos de programas lógicos.

Para obtener más información sobre el zoom semántico específicamente como se usa para las aplicaciones de la Tienda Windows, consulta Directrices para zoom semántico.

El modelo de uso del tipo de control SemanticZoom es inusual en que existe principalmente para el acceso mediante programación. Los clientes de Automatización de la interfaz de usuario de Microsoft pueden supervisar y manipular el control Zoom semántico para controlar el estado zoom de la lista. Los usuarios que no usan tecnología de asistencia suelen manipular el control Zoom semántico directamente a través de gestos táctiles o métodos abreviados de teclado.

En las secciones siguientes se define la estructura de árbol de automatización de la interfaz de usuario necesaria, las propiedades, los patrones de control y los eventos para el tipo de control SemanticZoom . Los requisitos de automatización de la interfaz de usuario se aplican a todos los controles de zoom semántico en los que el marco o la plataforma de la interfaz de usuario integra la compatibilidad de automatización de la interfaz de usuario 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 al tipo de control SemanticZoom 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
  • List
    • [SemanticZoom]
      • Elemento de lista (0 o más)
  • List
    • Elemento de lista (0 o más)

O:

Vista de control Vista de contenido
  • [SemanticZoom]
    • List
      • Elemento de lista (0 o más)
  • List
    • Elemento de lista (0 o más)

Propiedades relevantes

En la tabla siguiente se enumeran las propiedades de automatización de la interfaz de usuario cuyo valor o definición es especialmente relevante para los controles que implementan el tipo de control SemanticZoom . Para obtener más información sobre las propiedades de automatización de la interfaz de usuario, consulte Recuperación de propiedades de elementos de automatización de la interfaz de usuario.

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. Si el control de lista tiene un punto que se puede hacer clic (un punto en el que se puede hacer clic para que la lista tome el foco), ese punto debe exponerse a través de esta propiedad. Si el valor de la propiedad UIA_IsOffscreenPropertyId es TRUE, al intentar recuperar esta propiedad se produce el error UIA_E_NOCLICKABLEPOINT .
UIA_ControlTypePropertyId SemanticZoom
UIA_IsContentElementPropertyId TRUE
UIA_IsControlElementPropertyId TRUE
UIA_IsKeyboardFocusablePropertyId FALSE
UIA_LabeledByPropertyId Vea las notas. Si hay una etiqueta de texto estático, esta propiedad debe exponer una referencia a ese control.
UIA_LocalizedControlTypePropertyId Vea las notas. Cadena localizada correspondiente al tipo de control SemanticZoom . El valor predeterminado es "zoom semántico" para en-US o inglés (Estados Unidos). Nota: Algunos marcos concatenaron esto como "semanticzoom".
UIA_NamePropertyId Vea las notas. Una cadena vacía es aceptable o se podría proporcionar un nombre más útil, siempre y cuando no contenga el término zoom semántico , lo que haría que la combinación del tipo de control y el nombre resultaran confusos.

Patrones y propiedades de control necesarios

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

Patrón de control/Propiedad de patrón Soporte técnico/valor Notas
IToggleProvider Depende Los controles de zoom semántico admiten el patrón de control Toggle para permitir que el zoom se habilite o deshabilite. ToggleState_Off corresponde al estado plano, todo hacia arriba y ToggleState_On corresponde a la vista de alto nivel y alejada.

Eventos necesarios

En la tabla siguiente se enumeran los eventos de automatización de la interfaz de usuario que se requieren controles de zoom semántico 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_BoundingRectanglePropertyId evento de cambio de propiedad.
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_ToggleToggleStatePropertyId evento de cambio de propiedad.

Comentarios

Si una interfaz de usuario tiene un botón visible para alternar el comportamiento del control zoom semántico, este botón no debe tener un tipo de control SemanticZoom . Esto es contra intuitivo, pero el tipo de control SemanticZoom caracteriza el contenedor del contenido de zoom, no un botón que controla el zoom. (Este botón podría representarse simplemente como un tipo de control Button con el patrón de control Toggle ).

Información general sobre tipos de control de UI Automation

Información general sobre UI Automation