AccessibleRole Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Especifica valores que representan posibles roles de un objeto accesible.
public enum class AccessibleRole
public enum AccessibleRole
type AccessibleRole =
Public Enum AccessibleRole
- Herencia
Campos
Alert | 8 | Alerta o condición sobre la que se puede notificar a un usuario. Este rol se utiliza sólo para objetos que incluyen una alerta pero que no están asociados a otro elemento de la interfaz de usuario, como un cuadro de mensaje, un gráfico, texto o sonido. |
Animation | 54 | Control de animación que incluye contenido que cambia a lo largo del tiempo; por ejemplo, un control que muestra una serie de mapas de bits, como una tira de negativos. Los controles de animación se suelen mostrar cuando se están copiando archivos o cuando se está realizando cualquier otra tarea que requiera cierto tiempo. |
Application | 14 | Ventana principal de una aplicación. |
Border | 19 | Borde de ventana. Todo el borde está representado por un único objeto, en lugar de utilizar objetos diferentes para cada lado. |
ButtonDropDown | 56 | Botón que despliega una lista de elementos. |
ButtonDropDownGrid | 58 | Botón que despliega una cuadrícula. |
ButtonMenu | 57 | Botón que despliega un menú. |
Caret | 7 | Símbolo de intercalación, que es una línea intermitente, un bloque o un mapa de bits que marca la ubicación del punto de inserción en un área de cliente de la ventana. |
Cell | 29 | Celda de una tabla. |
Character | 32 | Objeto gráfico parecido a una animación, como el Asistente de Microsoft Office, que se suele mostrar para proporcionar ayuda a los usuarios de una aplicación. |
Chart | 17 | Imagen gráfica utilizada para representar datos. |
CheckButton | 44 | Control de casilla, que es una opción que se puede activar o desactivar independientemente de otras opciones. |
Client | 10 | Área del usuario de una ventana. |
Clock | 61 | Control que muestra la hora. |
Column | 27 | Columna de celdas de una tabla. |
ColumnHeader | 25 | Encabezado de columna, el cual proporciona una etiqueta visual para una columna de una tabla. |
ComboBox | 46 | Cuadro combinado, que es un control de edición con un cuadro de lista asociado que proporciona un conjunto de opciones predefinidas. |
Cursor | 6 | Puntero del mouse. |
Default | -1 | Rol proporcionado por el sistema. |
Diagram | 53 | Imagen gráfica utilizada para representar un diagrama de datos. |
Dial | 49 | Control en forma de disco o mando giratorio. También puede ser un objeto de sólo lectura, como un velocímetro. |
Dialog | 18 | Cuadro de diálogo o de mensaje. |
Document | 15 | Ventana de documento, la cual siempre se incluye en una ventana de aplicación. Este rol sólo se aplica a las ventanas MDI y hace referencia a un objeto que contiene la barra de título MDI. |
DropList | 47 | Cuadro de lista desplegable. Este control muestra un elemento y permite al usuario ver y seleccionar otro en una lista de opciones alternativas. |
Equation | 55 | Ecuación matemática. |
Graphic | 40 | Imagen. |
Grip | 4 | Puntero especial del mouse que permite a un usuario manipular elementos de la interfaz de usuario, como una ventana. Por ejemplo, un usuario puede hacer clic y arrastrar el control de tamaño de la esquina inferior derecha de una ventana para cambiar su tamaño. |
Grouping | 20 | Objetos agrupados de forma lógica. Puede haber una relación primaria-secundaria entre el objeto agrupador y los objetos que contiene. |
HelpBalloon | 31 | Presentación de ayuda en forma de información sobre herramientas o globo de ayuda, la cual contiene botones y etiquetas en los que los usuarios pueden hacer clic para abrir temas de ayuda personalizados. |
HotkeyField | 50 | Campo de tecla de acceso rápido que permite al usuario escribir una combinación o secuencia de pulsaciones de teclas utilizada como tecla de acceso rápido, lo que permite a los usuarios realizar una acción rápidamente. Un control de teclas de acceso rápido muestra las pulsaciones de teclas escritas por el usuario y garantiza que el usuario selecciona una combinación de teclas válida. |
Indicator | 39 | Indicador, como un gráfico de puntero, que apunta al elemento actual. |
IpAddress | 63 | Un control diseñado para escribir las direcciones de protocolo Internet (IP). |
Link | 30 | Vínculo, que es una conexión entre un documento de origen y un documento de destino. Este objeto puede tener la apariencia de un texto o un gráfico, pero actúa como un botón. |
List | 33 | Cuadro de lista, que permite al usuario seleccionar uno o varios elementos. |
ListItem | 34 | Elemento de un cuadro de lista o parte de lista de un cuadro combinado, cuadro de lista desplegable o cuadro combinado desplegable. |
MenuBar | 2 | Barra de menús, normalmente debajo de la barra de título de una ventana, en la que los usuarios pueden seleccionar menús. |
MenuItem | 12 | Elemento de menú, que es una entrada de un menú que un usuario puede elegir para ejecutar un comando, seleccionar una opción o mostrar otro menú. Funcionalmente, un elemento de menú puede ser equivalente a un botón de comando, un botón de radio, una casilla o un menú. |
MenuPopup | 11 | Menú que presenta una lista de opciones en la que el usuario puede efectuar una selección para realizar una acción. Todos los tipos de menús deben tener este rol, incluidos los menús desplegables, que se muestran al realizar una selección en una barra de menús, y los menús contextuales, que se muestran cuando se hace clic en el botón secundario del mouse. |
None | 0 | Sin rol. |
Outline | 35 | Estructura de árbol o esquema, como un control de vista de árbol, que muestra una lista jerárquica y suele permitir al usuario expandir o contraer las ramas. |
OutlineButton | 64 | Un control que navega como un elemento de esquema. |
OutlineItem | 36 | Elemento de una estructura de árbol o esquema. |
PageTab | 37 | Página de propiedades que permite a un usuario ver los atributos de una página, como su título, tanto si se trata de una página principal como de una modificada. Normalmente, el único secundario de este control es un objeto agrupado que incluye el contenido de la página asociada. |
PageTabList | 60 | Contenedor de controles de fichas de página. |
Pane | 16 | Área independiente de un marco, ventana dividida del documento o área rectangular de la barra de estado que se puede utilizar para mostrar información. Los usuarios pueden navegar entre paneles y dentro del contenido del panel actual, pero no pueden navegar entre elementos de paneles distintos. Por tanto, los paneles representan un nivel de agrupamiento inferior a los documentos o ventanas de marco, pero superior a los controles individuales. Normalmente, el usuario navega entre paneles presionando TAB, F6 o CTRL+TAB, dependiendo del contexto. |
ProgressBar | 48 | Barra indicadora de progreso, la cual indica el progreso de una operación de larga duración mostrando líneas de color dentro de un rectángulo horizontal. La longitud de las líneas en relación con la longitud del rectángulo indica el porcentaje de operación completado. Este control no utiliza ninguna entrada del usuario. |
PropertyPage | 38 | Página de propiedades, que es un cuadro de diálogo que controla la apariencia y el comportamiento de un objeto, como un archivo o un recurso. La apariencia de una página de propiedades varía en función de su finalidad. |
PushButton | 43 | Control de botón de comando, que es un pequeño control rectangular que un usuario puede activar o desactivar. Un botón de comando tiene una apariencia en relieve cuando se encuentra en su estado desactivado predeterminado y una apariencia de bajo relieve cuando se encuentra activado. |
RadioButton | 45 | Botón de radio. Se supone que todos los objetos que comparten un solo primario con este atributo forman parte de un único grupo mutuamente excluyente. Se pueden utilizar objetos agrupados para dividir botones de opción en grupos independientes cuando sea necesario. |
Row | 28 | Fila de celdas de una tabla. |
RowHeader | 26 | Encabezado de fila, el cual proporciona una etiqueta visual de una fila de una tabla. |
ScrollBar | 3 | Barra de desplazamiento vertical u horizontal que puede formar parte del área de cliente o se puede utilizar en un control. |
Separator | 21 | Espacio dividido visualmente en dos regiones, como un elemento de menú separador o paneles de división en una ventana. |
Slider | 51 | Control, a veces denominado barra de seguimiento, que permite a un usuario ajustar un valor en incrementos fijos entre un mínimo y un máximo mediante el movimiento de un control deslizante. Los controles de volumen del sistema operativo Windows son controles deslizantes. |
Sound | 5 | Sonido del sistema, que está asociado a varios eventos del sistema. |
SpinButton | 52 | Cuadro de número, también denominado control de flechas, que contiene un par de botones de flecha. Un usuario hace clic en los botones de flecha con el mouse para aumentar o reducir un valor. Un control de botón de número se suele utilizar con un control complementario, denominado ventana relacionada, en el que se muestra el valor actual. |
SplitButton | 62 | Un botón de la barra de herramientas que tiene un icono de lista desplegable directamente adyacente al botón. |
StaticText | 41 | Texto de sólo lectura, como en una etiqueta, para otros controles o instrucciones de un cuadro de diálogo. El texto estático no se puede modificar ni seleccionar. |
StatusBar | 23 | Barra de estado, que es un área que normalmente se encuentra en la parte inferior de la ventana de aplicación, en la que se muestra información sobre la operación actual, el estado de la aplicación o el objeto seleccionado. La barra de estado puede tener varios campos que muestren distintos tipos de información, como una explicación del comando de menú actualmente seleccionado. |
Table | 24 | Tabla que contiene filas y columnas de celdas y, de forma opcional, encabezados de filas y de columnas. |
Text | 42 | Texto seleccionable que se puede editar o que puede ser de sólo lectura. |
TitleBar | 1 | Barra de título de una ventana. |
ToolBar | 22 | Barra de herramientas, que es un agrupamiento de controles que proporcionan fácil acceso a características utilizadas con frecuencia. |
ToolTip | 13 | Información sobre herramientas, que es una pequeña ventana rectangular emergente que muestra una breve descripción de la finalidad de un botón. |
WhiteSpace | 59 | Espacio en blanco entre otros objetos. |
Window | 9 | Marco de ventana, el cual suele contener objetos secundarios como una barra de título, un cliente y otros objetos incluidos normalmente en una ventana. |
Ejemplos
En el ejemplo de código siguiente se muestra la creación de un control de gráfico compatible con accesibilidad, mediante las AccessibleObject clases y Control.ControlAccessibleObject para exponer información accesible. El control traza dos curvas junto con una leyenda. La ChartControlAccessibleObject
clase , que deriva de ControlAccessibleObject
, se usa en el CreateAccessibilityInstance método para proporcionar información accesible personalizada para el control de gráfico. Dado que la leyenda del gráfico no es un control basado en real Control , sino que se dibuja mediante el control de gráfico, no contiene ninguna información accesible integrada. Por este motivo, la ChartControlAccessibleObject
clase invalida el GetChild método para devolver que CurveLegendAccessibleObject
representa información accesible para cada parte de la leyenda. Cuando una aplicación accesible usa este control, el control puede proporcionar la información accesible necesaria.
En este ejemplo se muestra el uso de la AccessibleRole enumeración con la Role propiedad . Consulte la información general de la AccessibleObject clase para obtener el ejemplo de código completo.
// Inner class ChartControlAccessibleObject represents accessible information associated with the ChartControl.
// The ChartControlAccessibleObject is returned in the ChartControl::CreateAccessibilityInstance .
ref class ChartControlAccessibleObject: public ControlAccessibleObject
{
private:
ChartControl^ chartControl;
public:
ChartControlAccessibleObject( ChartControl^ ctrl )
: ControlAccessibleObject( ctrl )
{
chartControl = ctrl;
}
property System::Windows::Forms::AccessibleRole Role
{
// Gets the role for the Chart. This is used by accessibility programs.
virtual System::Windows::Forms::AccessibleRole get() override
{
return ::AccessibleRole::Chart;
}
}
property AccessibleStates State
{
// Gets the state for the Chart. This is used by accessibility programs.
virtual AccessibleStates get() override
{
return AccessibleStates::ReadOnly;
}
}
// The CurveLegend objects are "child" controls in terms of accessibility so
// return the number of ChartLengend objects.
virtual int GetChildCount() override
{
return chartControl->Legends->Length;
}
// Gets the Accessibility object of the child CurveLegend idetified by index.
virtual AccessibleObject^ GetChild( int index ) override
{
if ( index >= 0 && index < chartControl->Legends->Length )
{
return chartControl->Legends[ index ]->AccessibilityObject;
}
return nullptr;
}
internal:
// Helper function that is used by the CurveLegend's accessibility object
// to navigate between sibiling controls. Specifically, this function is used in
// the CurveLegend::CurveLegendAccessibleObject.Navigate function.
AccessibleObject^ NavigateFromChild( CurveLegend::CurveLegendAccessibleObject^ child, AccessibleNavigation navdir )
{
switch ( navdir )
{
case AccessibleNavigation::Down:
case AccessibleNavigation::Next:
return GetChild( child->ID + 1 );
case AccessibleNavigation::Up:
case AccessibleNavigation::Previous:
return GetChild( child->ID - 1 );
}
return nullptr;
}
// Helper function that is used by the CurveLegend's accessibility object
// to select a specific CurveLegend control. Specifically, this function is used
// in the CurveLegend::CurveLegendAccessibleObject.Select function.
void SelectChild( CurveLegend::CurveLegendAccessibleObject^ child, AccessibleSelection selection )
{
int childID = child->ID;
// Determine which selection action should occur, based on the
// AccessibleSelection value.
if ( (selection & AccessibleSelection::TakeSelection) != (AccessibleSelection)0 )
{
for ( int i = 0; i < chartControl->Legends->Length; i++ )
{
if ( i == childID )
{
chartControl->Legends[ i ]->Selected = true;
}
else
{
chartControl->Legends[ i ]->Selected = false;
}
}
// AccessibleSelection->AddSelection means that the CurveLegend will be selected.
if ( (selection & AccessibleSelection::AddSelection) != (AccessibleSelection)0 )
{
chartControl->Legends[ childID ]->Selected = true;
}
// AccessibleSelection->AddSelection means that the CurveLegend will be unselected.
if ( (selection & AccessibleSelection::RemoveSelection) != (AccessibleSelection)0 )
{
chartControl->Legends[ childID ]->Selected = false;
}
}
}
};
// class ChartControlAccessibleObject
// Inner class ChartControlAccessibleObject represents accessible information associated with the ChartControl.
// The ChartControlAccessibleObject is returned in the ChartControl.CreateAccessibilityInstance override.
public class ChartControlAccessibleObject : ControlAccessibleObject
{
ChartControl chartControl;
public ChartControlAccessibleObject(ChartControl ctrl) : base(ctrl)
{
chartControl = ctrl;
}
// Gets the role for the Chart. This is used by accessibility programs.
public override AccessibleRole Role
{
get {
return AccessibleRole.Chart;
}
}
// Gets the state for the Chart. This is used by accessibility programs.
public override AccessibleStates State
{
get {
return AccessibleStates.ReadOnly;
}
}
// The CurveLegend objects are "child" controls in terms of accessibility so
// return the number of ChartLengend objects.
public override int GetChildCount()
{
return chartControl.Legends.Length;
}
// Gets the Accessibility object of the child CurveLegend idetified by index.
public override AccessibleObject GetChild(int index)
{
if (index >= 0 && index < chartControl.Legends.Length) {
return chartControl.Legends[index].AccessibilityObject;
}
return null;
}
// Helper function that is used by the CurveLegend's accessibility object
// to navigate between sibiling controls. Specifically, this function is used in
// the CurveLegend.CurveLegendAccessibleObject.Navigate function.
internal AccessibleObject NavigateFromChild(CurveLegend.CurveLegendAccessibleObject child,
AccessibleNavigation navdir)
{
switch(navdir) {
case AccessibleNavigation.Down:
case AccessibleNavigation.Next:
return GetChild(child.ID + 1);
case AccessibleNavigation.Up:
case AccessibleNavigation.Previous:
return GetChild(child.ID - 1);
}
return null;
}
// Helper function that is used by the CurveLegend's accessibility object
// to select a specific CurveLegend control. Specifically, this function is used
// in the CurveLegend.CurveLegendAccessibleObject.Select function.
internal void SelectChild(CurveLegend.CurveLegendAccessibleObject child, AccessibleSelection selection)
{
int childID = child.ID;
// Determine which selection action should occur, based on the
// AccessibleSelection value.
if ((selection & AccessibleSelection.TakeSelection) != 0) {
for(int i = 0; i < chartControl.Legends.Length; i++) {
if (i == childID) {
chartControl.Legends[i].Selected = true;
} else {
chartControl.Legends[i].Selected = false;
}
}
// AccessibleSelection.AddSelection means that the CurveLegend will be selected.
if ((selection & AccessibleSelection.AddSelection) != 0) {
chartControl.Legends[childID].Selected = true;
}
// AccessibleSelection.AddSelection means that the CurveLegend will be unselected.
if ((selection & AccessibleSelection.RemoveSelection) != 0) {
chartControl.Legends[childID].Selected = false;
}
}
}
}
' Inner Class ChartControlAccessibleObject represents accessible information
' associated with the ChartControl.
' The ChartControlAccessibleObject is returned in the ' ChartControl.CreateAccessibilityInstance override.
Public Class ChartControlAccessibleObject
Inherits Control.ControlAccessibleObject
Private chartControl As ChartControl
Public Sub New(ctrl As ChartControl)
MyBase.New(ctrl)
chartControl = ctrl
End Sub
' Get the role for the Chart. This is used by accessibility programs.
Public Overrides ReadOnly Property Role() As AccessibleRole
Get
Return System.Windows.Forms.AccessibleRole.Chart
End Get
End Property
' Get the state for the Chart. This is used by accessibility programs.
Public Overrides ReadOnly Property State() As AccessibleStates
Get
Return AccessibleStates.ReadOnly
End Get
End Property
' The CurveLegend objects are "child" controls in terms of accessibility so
' return the number of ChartLengend objects.
Public Overrides Function GetChildCount() As Integer
Return chartControl.Legends.Length
End Function
' Get the Accessibility object of the child CurveLegend idetified by index.
Public Overrides Function GetChild(index As Integer) As AccessibleObject
If index >= 0 And index < chartControl.Legends.Length Then
Return chartControl.Legends(index).AccessibilityObject
End If
Return Nothing
End Function
' Helper function that is used by the CurveLegend's accessibility object
' to navigate between sibiling controls. Specifically, this function is used in
' the CurveLegend.CurveLegendAccessibleObject.Navigate function.
Friend Function NavigateFromChild(child As CurveLegend.CurveLegendAccessibleObject, _
navdir As AccessibleNavigation) As AccessibleObject
Select Case navdir
Case AccessibleNavigation.Down, AccessibleNavigation.Next
Return GetChild(child.ID + 1)
Case AccessibleNavigation.Up, AccessibleNavigation.Previous
Return GetChild(child.ID - 1)
End Select
Return Nothing
End Function
' Helper function that is used by the CurveLegend's accessibility object
' to select a specific CurveLegend control. Specifically, this function is used
' in the CurveLegend.CurveLegendAccessibleObject.Select function.
Friend Sub SelectChild(child As CurveLegend.CurveLegendAccessibleObject, selection As AccessibleSelection)
Dim childID As Integer = child.ID
' Determine which selection action should occur, based on the
' AccessibleSelection value.
If (selection And AccessibleSelection.TakeSelection) <> 0 Then
Dim i As Integer
For i = 0 To chartControl.Legends.Length - 1
If i = childID Then
chartControl.Legends(i).Selected = True
Else
chartControl.Legends(i).Selected = False
End If
Next i
' AccessibleSelection.AddSelection means that the CurveLegend will be selected.
If (selection And AccessibleSelection.AddSelection) <> 0 Then
chartControl.Legends(childID).Selected = True
End If
' AccessibleSelection.AddSelection means that the CurveLegend will be unselected.
If (selection And AccessibleSelection.RemoveSelection) <> 0 Then
chartControl.Legends(childID).Selected = False
End If
End If
End Sub
End Class
Comentarios
El rol del objeto describe la función del objeto y lo usan las aplicaciones de accesibilidad.
Esta enumeración la usan AccessibleObject y Control.AccessibleRole
Para obtener información adicional sobre la aplicación de accesibilidad, busque "Accesibilidad activa de Microsoft" en la biblioteca Microsoft Developer Network (MSDN).