QAccessibleInterface Class
La clase QAccessibleInterface define una interfaz que expone información sobre objetos accesibles. Más...
| Cabecera: | #include <QAccessibleInterface> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| Heredado Por: |
- Lista de todos los miembros, incluidos los heredados
- QAccessibleInterface es parte de Clases de Accesibilidad.
Funciones públicas
| QAccessibleActionInterface * | actionInterface() |
| virtual QColor | backgroundColor() const |
| virtual QAccessibleInterface * | child(int index) const = 0 |
| virtual QAccessibleInterface * | childAt(int x, int y) const = 0 |
| virtual int | childCount() const = 0 |
| virtual QAccessibleInterface * | focusChild() const |
| virtual QColor | foregroundColor() const |
| virtual int | indexOfChild(const QAccessibleInterface *child) const = 0 |
| virtual void * | interface_cast(QAccessible::InterfaceType type) |
| virtual bool | isValid() const = 0 |
| virtual QObject * | object() const = 0 |
| virtual QAccessibleInterface * | parent() const = 0 |
| virtual QRect | rect() const = 0 |
| virtual QList<std::pair<QAccessibleInterface *, QAccessible::Relation>> | relations(QAccessible::Relation match = QAccessible::AllRelations) const |
| virtual QAccessible::Role | role() const = 0 |
(since 6.5) QAccessibleSelectionInterface * | selectionInterface() |
| virtual void | setText(QAccessible::Text t, const QString &text) = 0 |
| virtual QAccessible::State | state() const = 0 |
| QAccessibleTableCellInterface * | tableCellInterface() |
| QAccessibleTableInterface * | tableInterface() |
| virtual QString | text(QAccessible::Text t) const = 0 |
| QAccessibleTextInterface * | textInterface() |
| QAccessibleValueInterface * | valueInterface() |
| virtual QWindow * | window() const |
Funciones protegidas
| virtual | ~QAccessibleInterface() |
Descripción Detallada
Esta clase forma parte de Accesibilidad para Aplicaciones QWidget.
Las herramientas de accesibilidad (también llamadas Clientes AT), tales como lectores de pantalla o visualizadores braille, requieren información de alto nivel sobre objetos accesibles en una aplicación. Los objetos accesibles proporcionan métodos de entrada y salida especializados, haciendo posible que los usuarios utilicen herramientas de accesibilidad con aplicaciones habilitadas (Servidores AT).
Cada elemento con el que el usuario necesita interactuar o reaccionar es un objeto accesible, y debe proporcionar esta información. Se trata principalmente de objetos visuales, como widgets y elementos de widgets, pero también pueden ser contenidos, como sonidos.
El cliente AT utiliza tres conceptos básicos para adquirir información sobre cualquier objeto accesible de una aplicación:
- Propiedades El cliente puede leer información sobre objetos accesibles. En algunos casos, el cliente también puede modificar estas propiedades, como el texto de una línea de edición.
- Acciones El cliente puede invocar acciones como pulsar un botón o .
- Relaciones y navegación El cliente puede pasar de un objeto accesible a otro, utilizando las relaciones entre objetos.
QAccessibleInterface define la API para estos tres conceptos.
Relaciones y navegación
Las funciones childCount() y indexOfChild() devuelven el número de hijos de un objeto accesible y el índice que un objeto hijo tiene en su padre. La función childAt() devuelve un QAccessibleInterface hijo que se encuentra en una posición. El hijo no tiene por qué ser un hijo directo. Esto permite evitar capas intermedias cuando el padre ya conoce al hijo superior. childAt() se utiliza para la prueba de acierto (encontrar el objeto bajo el ratón).
La función relations() proporciona información sobre las relaciones de un objeto con otros objetos, y parent() y child() permiten pasar de un objeto a otro.
Propiedades
La propiedad central de un objeto accesible es qué role() tiene. Diferentes objetos pueden tener el mismo rol, por ejemplo, tanto el elemento "Añadir línea" de una barra de desplazamiento como el botón OK de un diálogo tienen el mismo rol, "botón". El rol implica qué tipo de interacción puede realizar el usuario con el elemento de la interfaz de usuario.
La propiedad state() de un objeto es una combinación de diferentes banderas de estado y puede describir tanto cómo el estado del objeto difiere de un estado "normal", por ejemplo, podría no estar disponible, y también cómo se comporta, por ejemplo, podría ser seleccionable.
La propiedad text() proporciona información textual sobre el objeto. Un objeto suele tener un nombre, pero puede proporcionar información ampliada, como una descripción, texto de ayuda o información sobre cualquier acelerador de teclado que proporcione. Algunos objetos permiten cambiar la propiedad text() a través de la función setText(), pero en la mayoría de los casos esta información es de sólo lectura.
La propiedad rect() proporciona información sobre la geometría de un objeto accesible. Esta información sólo suele estar disponible para los objetos visuales.
Interfaces
Para que el usuario pueda interactuar con un objeto accesible, éste debe implementar QAccessibleActionInterface además de QAccessibleInterface. Los objetos que admiten selecciones pueden definir acciones para cambiar la selección.
Existen otras interfaces que deben implementarse según sea necesario. QAccessibleTextInterface debe utilizarse para ediciones de textos de mayor tamaño, como las vistas de documentos. Esta interfaz no debe implementarse para etiquetas/ediciones de una sola línea.
Para deslizadores, barras de desplazamiento y otros selectores de valores numéricos, debe implementarse QAccessibleValueInterface.
Las listas, tablas y árboles deben implementar QAccessibleTableInterface.
Véase también QAccessible, QAccessibleActionInterface, QAccessibleTextInterface, QAccessibleValueInterface, y QAccessibleTableInterface.
Documentación de las funciones miembro
[virtual noexcept protected] QAccessibleInterface::~QAccessibleInterface()
Destruye el QAccessibleInterface.
QAccessibleActionInterface *QAccessibleInterface::actionInterface()
[virtual] QColor QAccessibleInterface::backgroundColor() const
Devuelve el color de fondo del accesible si procede o un valor no válido QColor.
Véase también foregroundColor().
[pure virtual] QAccessibleInterface *QAccessibleInterface::child(int index) const
Devuelve el hijo accesible con índice index. Índice basado en 0. El número de hijos de un objeto puede comprobarse con childCount.
Devuelve nullptr cuando se pide un hijo inválido (por ejemplo, cuando el hijo se ha vuelto inválido mientras tanto).
Véase también childCount() y parent().
[pure virtual] QAccessibleInterface *QAccessibleInterface::childAt(int x, int y) const
Devuelve el QAccessibleInterface de un hijo que contiene las coordenadas de pantalla (x, y). Si no hay hijos en esta posición esta función devuelve nullptr. El accesible devuelto debe ser un hijo, pero no necesariamente un hijo directo.
Esta función sólo es fiable para objetos visibles (los objetos invisibles podrían no estar colocados correctamente).
Todos los objetos visibles proporcionan esta información.
Se proporciona una implementación por defecto para los objetos que heredan de QAccessibleObject. Esto iterará sobre todos los hijos. Si el widget gestiona sus hijos (por ejemplo, una tabla) será más eficiente escribir una implementación especializada.
Véase también rect().
[pure virtual] int QAccessibleInterface::childCount() const
Devuelve el número de hijos que pertenecen a este objeto. Un hijo puede proporcionar información de accesibilidad por sí mismo (por ejemplo, un widget hijo), o ser un subelemento de este objeto accesible.
Todos los objetos proporcionan esta información.
Véase también indexOfChild().
[virtual] QAccessibleInterface *QAccessibleInterface::focusChild() const
Devuelve el objeto que tiene el foco del teclado.
El objeto devuelto puede ser cualquier descendiente, incluido él mismo.
[virtual] QColor QAccessibleInterface::foregroundColor() const
Devuelve el color de primer plano del accesible si procede o un valor no válido QColor.
Véase también backgroundColor().
[pure virtual] int QAccessibleInterface::indexOfChild(const QAccessibleInterface *child) const
Devuelve el índice basado en 0 del objeto child en la lista de hijos de este objeto, o -1 si child no es hijo de este objeto.
Todos los objetos proporcionan esta información sobre sus hijos.
Véase también childCount().
[virtual] void *QAccessibleInterface::interface_cast(QAccessible::InterfaceType type)
Devuelve una interfaz de accesibilidad especializada type a partir de la genérica QAccessibleInterface.
Esta función debe reimplementarse cuando se proporcione más información sobre un widget u objeto a través de las interfaces especializadas. Por ejemplo, un editor de líneas debe implementar la función QAccessibleTextInterface.
Véase también QAccessible::InterfaceType, QAccessibleTextInterface, QAccessibleValueInterface, QAccessibleActionInterface, QAccessibleTableInterface, y QAccessibleTableCellInterface.
[pure virtual] bool QAccessibleInterface::isValid() const
Devuelve true si todos los datos necesarios para utilizar esta implementación de interfaz son válidos (por ejemplo, todos los punteros son no nulos); en caso contrario, devuelve false.
Véase también object().
[pure virtual] QObject *QAccessibleInterface::object() const
Devuelve un puntero a la dirección QObject para la que esta implementación de interfaz proporciona información.
Véase también isValid().
[pure virtual] QAccessibleInterface *QAccessibleInterface::parent() const
Devuelve el QAccessibleInterface del padre en la jerarquía de objetos accesible.
Devuelve nullptr si no existe ningún padre (por ejemplo, para el objeto de aplicación de nivel superior).
Véase también child().
[pure virtual] QRect QAccessibleInterface::rect() const
Devuelve la geometría del objeto. La geometría está en coordenadas de pantalla.
Esta función sólo es fiable para objetos visibles (los objetos invisibles podrían no estar dispuestos correctamente).
Todos los objetos visibles proporcionan esta información.
Véase también childAt().
[virtual] QList<std::pair<QAccessibleInterface *, QAccessible::Relation>> QAccessibleInterface::relations(QAccessible::Relation match = QAccessible::AllRelations) const
Devuelve las relaciones significativas con otros widgets. Normalmente no devolverá las relaciones padre/hijo, a menos que se manejen de forma específica, como en las vistas en árbol. Normalmente devolverá las relaciones etiquetado-por y etiquetado.
Es posible filtrar las relaciones utilizando el parámetro opcional match. Nunca debe devolverse a sí mismo.
Véase también parent() y child().
[pure virtual] QAccessible::Role QAccessibleInterface::role() const
Devuelve el rol del objeto. El rol de un objeto suele ser estático.
Todos los objetos accesibles tienen un rol.
Véase también text() y state().
[since 6.5] QAccessibleSelectionInterface *QAccessibleInterface::selectionInterface()
Esta función se introdujo en Qt 6.5.
[pure virtual] void QAccessibleInterface::setText(QAccessible::Text t, const QString &text)
Establece la propiedad de texto t del objeto a text.
Tenga en cuenta que las propiedades de texto de la mayoría de los objetos son de sólo lectura, por lo que llamar a esta función podría no tener ningún efecto.
Véase también text().
[pure virtual] QAccessible::State QAccessibleInterface::state() const
Devuelve el estado actual del objeto. El valor devuelto es una combinación de las banderas de la enumeración QAccessible::StateFlag.
Todos los objetos accesibles tienen un estado.
Véase también text() y role().
QAccessibleTableCellInterface *QAccessibleInterface::tableCellInterface()
QAccessibleTableInterface *QAccessibleInterface::tableInterface()
[pure virtual] QString QAccessibleInterface::text(QAccessible::Text t) const
Devuelve el valor de la propiedad de texto t del objeto.
QAccessible::Name es una cadena utilizada por los clientes para identificar, encontrar o anunciar un objeto accesible para el usuario. Todos los objetos deben tener un nombre que sea único dentro de su contenedor. El nombre puede ser utilizado de forma diferente por los clientes, por lo que debe ofrecer una breve descripción del objeto y ser único.
QAccessible::Description proporciona información textual sobre el aspecto visual de un objeto accesible. La descripción se utiliza principalmente para proporcionar un mayor contexto a los usuarios con problemas de visión, pero también se utiliza para búsquedas contextuales u otras aplicaciones. No todos los objetos tienen una descripción. Un botón de "OK" no necesitaría descripción, pero sí un botón de herramientas que muestra la imagen de un smiley.
La dirección QAccessible::Value de un objeto accesible representa la información visual que contiene el objeto, por ejemplo, el texto de una línea de edición. Normalmente, el valor puede ser modificado por el usuario. No todos los objetos tienen un valor, por ejemplo, las etiquetas de texto estáticas no lo tienen, y algunos objetos tienen un estado que ya es el valor, por ejemplo, los botones de alternancia.
El texto QAccessible::Help proporciona información sobre la función y el uso de un objeto accesible. No todos los objetos proporcionan esta información.
QAccessible::Accelerator es un atajo de teclado que activa la acción por defecto del objeto. Un atajo de teclado es el carácter subrayado en el texto de un menú, elemento de menú o widget, y puede ser el propio carácter o una combinación de este carácter y una tecla modificadora como Alt, Ctrl o Mayús. Los controles de comandos, como los botones de herramientas, también tienen teclas de acceso directo y suelen mostrarlas en su información sobre herramientas.
QAccessible::Identifier puede configurarse explícitamente para proporcionar un identificador a las tecnologías de asistencia. Esto puede ser especialmente útil para pruebas de interfaz de usuario. Si no se ha establecido explícitamente ningún identificador, la interfaz correspondiente lo establece en un identificador basado en QObject::objectName o su nombre de clase y QObject::objectName o el nombre de clase de los padres en su cadena de padres.
Todos los objetos proporcionan una cadena para QAccessible::Name.
Véase también setText(), role() y state().
QAccessibleTextInterface *QAccessibleInterface::textInterface()
QAccessibleValueInterface *QAccessibleInterface::valueInterface()
[virtual] QWindow *QAccessibleInterface::window() const
Devuelve la ventana asociada al objeto subyacente. Por ejemplo, QAccessibleWidget reimplementa esto y devuelve el windowHandle() del QWidget.
Se utiliza en algunas plataformas para poder notificar al cliente AT los cambios de estado. El backend recorrerá todos los ancestros hasta encontrar una ventana. (Esto significa que al menos una interfaz entre las antecesoras debe devolver un puntero QWindow válido).
La implementación por defecto devuelve nullptr.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.