Tipo de control MenuBar
En este tema se proporciona información sobre la compatibilidad de Automatización de la interfaz de usuario de Microsoft con el tipo de control menuBar .
Los controles de la barra de menús son un ejemplo de controles que implementan el MenuBar tipo de control. Las barras de menú proporcionan un medio para que los usuarios activen comandos y opciones contenidos en una aplicación.
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 MenuBar. Los requisitos de automatización de la interfaz de usuario se aplican a todos los controles de la barra de menús en los que la plataforma o plataforma de la interfaz de usuario integra la compatibilidad con automatización de la interfaz de usuario para los tipos de control y los patrones de control.
Este tema contiene las secciones siguientes.
- estructura de árbol típica
- de propiedades pertinentes
- patrones de control necesarios
- eventos necesarios
- temas relacionados
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 barra de menús y describe lo que se puede contener en cada vista. Para obtener más información sobre el árbol de automatización de la interfaz de usuario, consulte Introducción al árbol de automatización de la interfaz de usuario.
Vista de control | Vista de contenido |
---|---|
|
|
Un control de barra de menús siempre aparece en la vista de control, pero no en la vista de contenido porque normalmente no transmite información significativa al usuario final (a menos que la aplicación contenga más de una barra de menús).
Los clientes de automatización de la interfaz de usuario pueden escuchar el evento de UIA_MenuModeStartEventId para asegurarse de que se les notifica de forma coherente cuando la interfaz de usuario entra en modo de menú. Cuando la aplicación está en modo de menú, se puede capturar toda la entrada del teclado para la navegación del menú (por ejemplo, escribir "s" podría invocar el menú guardar en lugar de escribir el carácter en el área cliente de la aplicación). El evento UIA_MenuModeStartEventId debe preceder al primer evento UIA_MenuOpenedEventId para garantizar la coherencia lógica. El evento UIA_MenuModeEndEventId sigue el último evento UIA_MenuClosedEventId. Al hacer clic en un elemento de menú también se puede desencadenar inmediatamente el evento UIA_MenuModeStartEventId, seguido de un evento de UIA_MenuOpenedEventId.
Un control de barra de menús puede contener otros controles, como controles de edición y cuadros combinados, dentro de su estructura. Estos controles adicionales corresponden a los "otros controles" enumerados anteriormente en las vistas de control y contenido.
Propiedades pertinentes
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 el tipo de control menuBar . Para obtener más información sobre las propiedades de automatización de la interfaz de usuario, consulte Recuperar propiedades de elementos de automatización de la interfaz de usuario.
Ui Automation (propiedad) | Valor | Notas |
---|---|---|
UIA_AcceleratorKeyPropertyId | NULO | Normalmente, las barras de menú no tienen teclas de aceleración. |
UIA_AccessKeyPropertyId | "ALT" | Al presionar la tecla ALT, normalmente se debe poner el foco en la barra de menús de la aplicación. |
UIA_BoundingRectanglePropertyId | Vea las notas. | El valor expuesto por esta propiedad debe incluir todos los controles contenidos en ella. |
UIA_ControlTypePropertyId | menuBar de | |
UIA_IsContentElementPropertyId | FALSO | El control de la barra de menús no se incluye en la vista de contenido del árbol de automatización de la interfaz de usuario. |
UIA_IsControlElementPropertyId | VERDADERO | El control de la barra de menús siempre se incluye en la vista de control del árbol de automatización de la interfaz de usuario. |
UIA_IsKeyboardFocusablePropertyId | VERDADERO | Los controles de la barra de menús son con foco de teclado porque los controles que contienen pueden tomar el foco del teclado. |
UIA_IsOffscreenPropertyId | Vea las notas. | El valor de esta propiedad depende de si el control se puede ver en la pantalla. |
UIA_LabeledByPropertyId | NULO | Normalmente, los controles de barra de menús no tienen una etiqueta. |
UIA_LocalizedControlTypePropertyId | Vea las notas. | Cadena localizada correspondiente al tipo de control MenuBar . El valor predeterminado es "barra de menús" para en-US o inglés (Estados Unidos). |
UIA_NamePropertyId | Vea las notas. | El control de barra de menús no necesita un nombre a menos que una aplicación tenga más de una barra de menús. Si hay más de una barra de menús en una aplicación, use esta propiedad para exponer nombres distintivos, como "Formato" o "Esquematización". |
UIA_OrientationPropertyId | Depende | Esta propiedad expone si el control de la barra de menús es horizontal o vertical. |
Patrones 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 los controles de barra de menús. Para obtener más información sobre los patrones de control, consulte Introducción a los patrones de control de automatización de la interfaz de usuario.
Patrón de control | Apoyo | Notas |
---|---|---|
IExpandCollapseProvider | Depende | Si el control se puede expandir o contraer, debe implementar el patrón de control ExpandCollapse. |
IDockProvider | Depende | Si el control se puede acoplar a diferentes partes de la pantalla, debe implementar el patrón de control dock de. |
ITransformProvider | Depende | Si el control se puede cambiar de tamaño, girar o mover, debe implementar el patrón de control Transformar. |
Eventos necesarios
En la tabla siguiente se enumeran los eventos de automatización de la interfaz de usuario que los controles de barra de menús son necesarios para admitir. Para obtener más información sobre los eventos, consulte 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. | Si el control admite el patrón de control ExpandCollapse, debe admitir este evento. |
UIA_IsEnabledPropertyId evento de cambio de propiedad. | Si el control admite la propiedadIsEnabled, debe admitir este evento. |
UIA_IsOffscreenPropertyId evento de cambio de propiedad. | Si el control admite la propiedad IsOffscreen, debe admitir este evento. |
UIA_StructureChangedEventId |
Temas relacionados
-
conceptual de
-
Introducción a los tipos de control de automatización de la interfaz de usuario de
-
información general de automatización de la interfaz de usuario de