QAccessibleInterface Class
La classe QAccessibleInterface définit une interface qui expose des informations sur les objets accessibles. Plus d'informations...
| En-tête : | #include <QAccessibleInterface> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake : | QT += gui |
| Inherited By : |
- Liste de tous les membres, y compris les membres hérités
- QAccessibleInterface fait partie des classes d'accessibilité.
Fonctions publiques
| 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 |
Fonctions protégées
| virtual | ~QAccessibleInterface() |
Description détaillée
Cette classe fait partie de Accessibilité pour les applications QWidget.
Les outils d'accessibilité (également appelés clients AT), tels que les lecteurs d'écran ou les afficheurs braille, nécessitent des informations de haut niveau sur les objets accessibles d'une application. Les objets accessibles fournissent des méthodes d'entrée et de sortie spécialisées, permettant aux utilisateurs d'utiliser des outils d'accessibilité avec des applications compatibles (serveurs AT).
Chaque élément avec lequel l'utilisateur doit interagir ou réagir est un objet accessible et doit fournir ces informations. Il s'agit principalement d'objets visuels, tels que les widgets et les éléments de widget, mais il peut également s'agir de contenu, tel que des sons.
Le client AT utilise trois concepts de base pour obtenir des informations sur tout objet accessible dans une application :
- Propriétés Le client peut lire des informations sur les objets accessibles. Dans certains cas, le client peut également modifier ces propriétés, comme le texte dans une ligne d'édition.
- Actions Le client peut invoquer des actions comme appuyer sur un bouton ou .
- Relations et navigation Le client peut passer d'un objet accessible à un autre en utilisant les relations entre les objets.
La QAccessibleInterface définit l'API pour ces trois concepts.
Relations et navigation
Les fonctions childCount() et indexOfChild() renvoient le nombre d'enfants d'un objet accessible et l'index d'un objet enfant dans son parent. La fonction childAt() renvoie une QAccessibleInterface enfant trouvée à une position donnée. L'enfant ne doit pas nécessairement être un enfant direct. Cela permet de contourner les couches intermédiaires lorsque le parent connaît déjà l'enfant le plus élevé. childAt La fonction () est utilisée pour tester les résultats (trouver l'objet sous la souris).
La fonction relations() fournit des informations sur les relations d'un objet avec d'autres objets, et parent() et child() permettent de passer d'un objet à un autre.
Propriétés
La propriété principale d'un objet accessible est son role(). Différents objets peuvent avoir le même rôle, par exemple l'élément "Ajouter une ligne" dans une barre de défilement et le bouton OK dans une boîte de dialogue ont le même rôle, "bouton". Le rôle implique le type d'interaction que l'utilisateur peut effectuer avec l'élément d'interface utilisateur.
La propriété state() d'un objet est une combinaison de différents indicateurs d'état et peut décrire à la fois comment l'état de l'objet diffère d'un état "normal" (par exemple, il peut être indisponible) et comment il se comporte (par exemple, il peut être sélectionnable).
La propriété text() fournit des informations textuelles sur l'objet. Un objet a généralement un nom, mais il peut fournir des informations complémentaires telles qu'une description, un texte d'aide ou des informations sur les accélérateurs de clavier qu'il fournit. Certains objets permettent de modifier la propriété text() par l'intermédiaire de la fonction setText(), mais ces informations sont dans la plupart des cas en lecture seule.
La propriété rect() fournit des informations sur la géométrie d'un objet accessible. Ces informations ne sont généralement disponibles que pour les objets visuels.
Interfaces
Pour permettre à l'utilisateur d'interagir avec un objet accessible, l'objet doit implémenter QAccessibleActionInterface en plus de QAccessibleInterface. Les objets qui prennent en charge les sélections peuvent définir des actions pour modifier la sélection.
Plusieurs autres interfaces doivent être mises en œuvre selon les besoins. QAccessibleTextInterface doit être utilisé pour les modifications de textes plus importants, comme les vues de documents. Cette interface ne doit pas être mise en œuvre pour les modifications d'étiquettes ou de lignes simples.
Pour les curseurs, les barres de défilement et les autres sélecteurs de valeurs numériques, il convient d'utiliser QAccessibleValueInterface.
Les listes, les tableaux et les arbres doivent être implémentés à l'adresse QAccessibleTableInterface.
Voir également QAccessible, QAccessibleActionInterface, QAccessibleTextInterface, QAccessibleValueInterface, et QAccessibleTableInterface.
Documentation des fonctions membres
[virtual noexcept protected] QAccessibleInterface::~QAccessibleInterface()
Détruit le site QAccessibleInterface.
QAccessibleActionInterface *QAccessibleInterface::actionInterface()
[virtual] QColor QAccessibleInterface::backgroundColor() const
Renvoie la couleur d'arrière-plan de l'élément accessible, le cas échéant, ou une valeur invalide QColor.
Voir aussi foregroundColor().
[pure virtual] QAccessibleInterface *QAccessibleInterface::child(int index) const
Retourne l'enfant accessible avec l'index index. Index basé sur 0. Le nombre d'enfants d'un objet peut être vérifié avec childCount.
Renvoie nullptr en cas de demande d'un enfant invalide (par exemple, lorsque l'enfant est devenu invalide entre-temps).
Voir aussi childCount() et parent().
[pure virtual] QAccessibleInterface *QAccessibleInterface::childAt(int x, int y) const
Renvoie l'adresse QAccessibleInterface d'un enfant qui contient les coordonnées de l'écran (x, y). S'il n'y a pas d'enfant à cette position, cette fonction renvoie nullptr. L'objet accessible renvoyé doit être un enfant, mais pas nécessairement un enfant direct.
Cette fonction n'est fiable que pour les objets visibles (les objets invisibles peuvent ne pas être disposés correctement).
Tous les objets visuels fournissent cette information.
Une implémentation par défaut est fournie pour les objets héritant de QAccessibleObject. Cette fonction itère sur tous les enfants. Si le widget gère ses enfants (par exemple, un tableau), il sera plus efficace d'écrire une implémentation spécialisée.
Voir également rect().
[pure virtual] int QAccessibleInterface::childCount() const
Renvoie le nombre d'enfants appartenant à cet objet. Un enfant peut fournir des informations sur l'accessibilité par lui-même (par exemple, un widget enfant) ou être un sous-élément de cet objet accessible.
Tous les objets fournissent ces informations.
Voir également indexOfChild().
[virtual] QAccessibleInterface *QAccessibleInterface::focusChild() const
Renvoie l'objet qui a le focus clavier.
L'objet renvoyé peut être n'importe quel descendant, y compris lui-même.
[virtual] QColor QAccessibleInterface::foregroundColor() const
Renvoie la couleur d'avant-plan de l'accessible, le cas échéant, ou une valeur invalide QColor.
Voir aussi backgroundColor().
[pure virtual] int QAccessibleInterface::indexOfChild(const QAccessibleInterface *child) const
Renvoie l'index basé sur 0 de l'objet child dans la liste des enfants de cet objet, ou -1 si child n'est pas un enfant de cet objet.
Tous les objets fournissent ces informations sur leurs enfants.
Voir aussi childCount().
[virtual] void *QAccessibleInterface::interface_cast(QAccessible::InterfaceType type)
Renvoie une interface d'accessibilité spécialisée type à partir de l'interface générique QAccessibleInterface.
Cette fonction doit être réimplémentée lorsque l'on fournit davantage d'informations sur un widget ou un objet par l'intermédiaire des interfaces spécialisées. Par exemple, un éditeur de ligne doit implémenter l'interface QAccessibleTextInterface.
Voir aussi QAccessible::InterfaceType, QAccessibleTextInterface, QAccessibleValueInterface, QAccessibleActionInterface, QAccessibleTableInterface, et QAccessibleTableCellInterface.
[pure virtual] bool QAccessibleInterface::isValid() const
Renvoie true si toutes les données nécessaires à l'utilisation de cette implémentation d'interface sont valides (par exemple, tous les pointeurs sont non nuls) ; sinon, renvoie false.
Voir aussi object().
[pure virtual] QObject *QAccessibleInterface::object() const
Renvoie un pointeur sur le site QObject pour lequel l'implémentation de cette interface fournit des informations.
Voir aussi isValid().
[pure virtual] QAccessibleInterface *QAccessibleInterface::parent() const
Renvoie l'adresse QAccessibleInterface du parent dans la hiérarchie des objets accessibles.
Renvoie nullptr si aucun parent n'existe (par exemple, pour l'objet d'application de niveau supérieur).
Voir aussi child().
[pure virtual] QRect QAccessibleInterface::rect() const
Renvoie la géométrie de l'objet. La géométrie est exprimée en coordonnées d'écran.
Cette fonction n'est fiable que pour les objets visibles (les objets invisibles peuvent ne pas être disposés correctement).
Tous les objets visuels fournissent cette information.
Voir également childAt().
[virtual] QList<std::pair<QAccessibleInterface *, QAccessible::Relation>> QAccessibleInterface::relations(QAccessible::Relation match = QAccessible::AllRelations) const
Renvoie les relations significatives avec les autres widgets. En général, les relations parent/enfant ne sont pas renvoyées, à moins qu'elles ne soient gérées d'une manière spécifique, comme dans les vues arborescentes. Il renvoie généralement les relations "étiqueté par" et "étiqueté".
Il est possible de filtrer les relations en utilisant le paramètre optionnel match. Il ne doit jamais se renvoyer lui-même.
Voir également parent() et child().
[pure virtual] QAccessible::Role QAccessibleInterface::role() const
Renvoie le rôle de l'objet. Le rôle d'un objet est généralement statique.
Tous les objets accessibles ont un rôle.
Voir également text() et state().
[since 6.5] QAccessibleSelectionInterface *QAccessibleInterface::selectionInterface()
Cette fonction a été introduite dans Qt 6.5.
[pure virtual] void QAccessibleInterface::setText(QAccessible::Text t, const QString &text)
Définit la propriété de texte t de l'objet à text.
Notez que les propriétés de texte de la plupart des objets sont en lecture seule, de sorte que l'appel à cette fonction peut n'avoir aucun effet.
Voir également text().
[pure virtual] QAccessible::State QAccessibleInterface::state() const
Renvoie l'état actuel de l'objet. La valeur renvoyée est une combinaison des drapeaux de l'énumération QAccessible::StateFlag.
Tous les objets accessibles ont un état.
QAccessibleTableCellInterface *QAccessibleInterface::tableCellInterface()
QAccessibleTableInterface *QAccessibleInterface::tableInterface()
[pure virtual] QString QAccessibleInterface::text(QAccessible::Text t) const
Renvoie la valeur de la propriété textuelle t de l'objet.
QAccessible::Name est une chaîne de caractères utilisée par les clients pour identifier, trouver ou annoncer un objet accessible à l'utilisateur. Tous les objets doivent avoir un nom unique dans leur conteneur. Le nom peut être utilisé différemment par les clients, il doit donc donner une brève description de l'objet et être unique.
Le site QAccessible::Description d'un objet accessible fournit des informations textuelles sur l'aspect visuel de l'objet. La description est principalement utilisée pour fournir un meilleur contexte aux utilisateurs malvoyants, mais elle est également utilisée pour la recherche contextuelle ou d'autres applications. Tous les objets n'ont pas de description. Un bouton "OK" n'a pas besoin de description, mais un bouton d'outil qui affiche l'image d'un smiley en a besoin.
Le site QAccessible::Value d'un objet accessible représente les informations visuelles contenues dans l'objet, par exemple le texte d'une ligne d'édition. En général, la valeur peut être modifiée par l'utilisateur. Tous les objets n'ont pas de valeur, par exemple les étiquettes de texte statique, et certains objets ont un état qui correspond déjà à la valeur, par exemple les boutons à bascule.
Le texte QAccessible::Help fournit des informations sur la fonction et l'utilisation d'un objet accessible. Tous les objets ne fournissent pas ces informations.
Le texte QAccessible::Accelerator est un raccourci clavier qui active l'action par défaut de l'objet. Un raccourci clavier est le caractère souligné dans le texte d'un menu, d'un élément de menu ou d'un widget. Il s'agit soit du caractère lui-même, soit d'une combinaison de ce caractère et d'une touche modificatrice telle que Alt, Ctrl ou Shift. Les commandes comme les boutons d'outils ont également des touches de raccourci et les affichent généralement dans leur bulle d'aide.
Le site QAccessible::Identifier peut être explicitement défini pour fournir un identifiant aux technologies d'assistance. Cela peut être particulièrement utile pour les tests d'interface utilisateur. Si aucun identifiant n'a été explicitement défini, l'identifiant est défini par l'interface respective à un identifiant basé sur QObject::objectName ou son nom de classe et QObject::objectName ou le nom de classe des parents dans sa chaîne de parents.
Tous les objets fournissent une chaîne de caractères pour QAccessible::Name.
Voir également setText(), role() et state().
QAccessibleTextInterface *QAccessibleInterface::textInterface()
QAccessibleValueInterface *QAccessibleInterface::valueInterface()
[virtual] QWindow *QAccessibleInterface::window() const
Renvoie la fenêtre associée à l'objet sous-jacent. Par exemple, QAccessibleWidget réimplémente cette fonction et renvoie le windowHandle() de l'objet QWidget.
Il est utilisé sur certaines plates-formes pour pouvoir notifier au client AT les changements d'état. Le backend remontera tous les ancêtres jusqu'à ce qu'il trouve une fenêtre. (Cela signifie qu'au moins une interface parmi les ancêtres doit renvoyer un pointeur QWindow valide).
L'implémentation par défaut renvoie 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.