QAccessible Class
La classe QAccessible fournit des énumérations et des fonctions statiques liées à l'accessibilité. En savoir plus...
| En-tête : | #include <QAccessible> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake : | QT += gui |
- Liste de tous les membres, y compris les membres hérités
- QAccessible fait partie des classes d'accessibilité.
Types publics
| struct | State |
(since 6.8) enum class | AnnouncementPoliteness { Polite, Assertive } |
(since 6.8) enum class | Attribute { Custom, Level, Locale, Orientation } |
| enum | Event { AcceleratorChanged, ActionChanged, ActiveDescendantChanged, Alert, Announcement, …, VisibleDataChanged } |
| Id | |
| InterfaceFactory | |
| enum | InterfaceType { TextInterface, ValueInterface, ActionInterface, TableInterface, TableCellInterface, …, ViewportInterface } |
| flags | Relation |
| enum | RelationFlag { Label, Labelled, Controller, Controlled, DescriptionFor, …, AllRelations } |
| enum | Role { AlertMessage, Animation, Application, Assistant, BlockQuote, …, Window } |
| enum | Text { Name, Description, Value, Help, Accelerator, …, Identifier } |
| enum | TextBoundaryType { CharBoundary, WordBoundary, SentenceBoundary, ParagraphBoundary, LineBoundary, NoBoundary } |
Membres publics statiques
| QAccessibleInterface * | accessibleInterface(QAccessible::Id id) |
| void | deleteAccessibleInterface(QAccessible::Id id) |
| void | installFactory(QAccessible::InterfaceFactory factory) |
| bool | isActive() |
| QAccessibleInterface * | queryAccessibleInterface(QObject *object) |
| QAccessible::Id | registerAccessibleInterface(QAccessibleInterface *iface) |
| void | removeFactory(QAccessible::InterfaceFactory factory) |
| void | setRootObject(QObject *object) |
| QAccessible::Id | uniqueId(QAccessibleInterface *iface) |
| void | updateAccessibility(QAccessibleEvent *event) |
Description détaillée
Cette classe fait partie de l'accessibilité pour les applications QWidget.
Les applications accessibles peuvent être utilisées par des personnes qui ne sont pas en mesure d'utiliser les applications par des moyens conventionnels.
Les fonctions de cette classe servent à la communication entre les applications accessibles (également appelées « serveurs AT ») et les outils d’accessibilité (clients AT), tels que les lecteurs d’écran et les afficheurs braille. Les clients et les serveurs communiquent de la manière suivante :
- Les serveurs AT informent les clients des événements via des appels à la fonction ` updateAccessibility()`.
- Les clients AT demandent des informations sur les objets présents sur le serveur. La classe ` QAccessibleInterface ` constitue l’interface centrale et encapsule ces informations dans une API purement virtuelle. Les implémentations de cette interface sont fournies par Qt via l’API ` queryAccessibleInterface()`.
La communication entre les serveurs et les clients est initialisée par la fonction ` setRootObject()`. Des pointeurs de fonction peuvent être définis pour remplacer ou étendre le comportement par défaut des fonctions statiques de `QAccessible`.
Qt prend en charge Microsoft Active Accessibility (MSAA), l'accessibilité macOS et la norme AT-SPI d'Unix/X11. D'autres backends peuvent être pris en charge à l'aide de QAccessibleBridge.
Dans l’implémentation AT-SPI d’Unix/X11, les applications deviennent accessibles lorsque deux conditions sont remplies :
- la propriété DBus `org.a11y.Status.IsEnabled` est à la valeur « true »
- la propriété DBus `org.a11y.Status.ScreenReaderEnabled` est à la valeur `true`
Une alternative à la configuration des propriétés DBus AT-SPI consiste à définir la variable d'environnement QT_LINUX_ACCESSIBILITY_ALWAYS_ON.
Outre les fonctions statiques de `QAccessible`, Qt propose une interface générique, ` QAccessibleInterface`, qui peut être utilisée pour encapsuler tous les widgets et objets (par exemple, ` QPushButton`). Cette interface unique fournit toutes les métadonnées nécessaires aux technologies d’assistance. Qt fournit des implémentations de cette interface pour ses widgets intégrés sous forme de plugins.
Lorsque vous développez des widgets personnalisés, vous pouvez créer des sous-classes personnalisées de ` QAccessibleInterface ` et les distribuer sous forme de plugins (à l’aide de ` QAccessiblePlugin`) ou les compiler dans l’application. De même, la prise en charge prédéfinie de l’accessibilité de Qt peut être intégrée sous forme de plugin (par défaut) ou directement dans la bibliothèque Qt. Le principal avantage de l’utilisation de plugins est que les classes d’accessibilité ne sont chargées en mémoire que si elles sont réellement utilisées ; elles ne ralentissent pas le fonctionnement dans le cas courant où aucune technologie d’assistance n’est utilisée.
Qt inclut également deux classes pratiques, QAccessibleObject et QAccessibleWidget, qui héritent de QAccessibleInterface et fournissent le plus petit dénominateur commun en matière de métadonnées (par exemple, la géométrie des widgets, le titre de la fenêtre, le texte d’aide de base). Vous pouvez les utiliser comme classes de base lorsque vous encapsulez vos sous-classes personnalisées QObject ou QWidget.
Voir également QAccessibleInterface.
Documentation sur les types de membres
[since 6.8] enum class QAccessible::AnnouncementPoliteness
Cette énumération décrit la priorité des annonces utilisées par l'QAccessibleAnnouncementEvent.
Avec l'QAccessible::AnouncementPoliteness::Polite, les technologies d'assistance doivent annoncer le message dès que l'occasion s'y prête, par exemple à la fin de la lecture de la phrase en cours ou lorsque l'utilisateur interrompt la saisie. Une annonce « polie » peut toutefois interrompre une annonce « polie » en cours.
Lorsque la valeur « QAccessible::AnouncementPoliteness::Assertive » est spécifiée, les technologies d’assistance doivent avertir l’utilisateur immédiatement.
Une interruption pouvant désorienter les utilisateurs ou les empêcher de terminer leur tâche en cours, l’attribut « QAccessible::AnouncementPoliteness::Assertive » ne doit pas être utilisé, sauf si l’interruption est impérative.
| Constante | Valeur | Description |
|---|---|---|
QAccessible::AnnouncementPoliteness::Polite | 0 | L'annonce a une priorité normale. |
QAccessible::AnnouncementPoliteness::Assertive | 1 | L'annonce a une priorité élevée et doit avertir l'utilisateur immédiatement, même si cela implique d'interrompre la tâche en cours de l'utilisateur. |
Cette énumération a été introduite dans Qt 6.8.
Voir aussi QAccessibleAnnouncementEvent.
[since 6.8] enum class QAccessible::Attribute
Cette énumération décrit les différents types d’attributs utilisés par l’interface de programmation « QAccessibleAttributesInterface ».
Ces attributs sont comparables au concept de propriétés/(attributs d’objet) que l’on retrouve dans ARIA, AT-SPI2, IAccessible, UIA et NSAccessibility, et sont mis en correspondance avec leur équivalent sur la plateforme concernée, le cas échéant.
Chaque attribut est traité comme une paire clé-valeur, les valeurs de cette énumération servant de clés.
Les valeurs d’attribut sont représentées dans un ` QVariant`. Le type de la valeur stockée dans le ` QVariant ` est fixe et spécifié ci-dessous pour chacun des types d’attribut.
| Constante | Valeur | Description |
|---|---|---|
QAccessible::Attribute::Custom | 0 | type de valeur : QHash<QString, QString> L’attribut « Custom » est particulier en ce sens qu’il peut représenter efficacement plusieurs attributs à la fois, puisqu’il s’agit lui-même d’une QHash utilisée pour représenter des paires clé-valeur. Pour les plateformes prenant en charge des paires clé-valeur personnalisées pour les attributs, celles définies dans l’attribut « Custom » sont transmises à la couche plateforme sans aucune conversion vers des attributs spécifiques à la plateforme. En général, il convient d’utiliser les autres attributs, dont le typage est plus strict. Cet attribut peut, par exemple, être utilisé pour le prototypage avant l’ajout officiel d’une nouvelle valeur d’énumération pour une fonctionnalité spécifique. |
QAccessible::Attribute::Level | 1 | type de valeur : int Définit le niveau hiérarchique d’un élément au sein d’une structure, par exemple le niveau d’une balise d’en-tête. Cet attribut correspond conceptuellement à la propriété « aria-level » dans ARIA. |
QAccessible::Attribute::Locale (since Qt 6.10) | 2 | Type de valeur : QLocale Paramètre régional de l’élément. Cet attribut peut être utilisé pour spécifier qu’un élément possède un paramètre régional différent de celui par défaut de l’application, par exemple pour des documents ou des paragraphes au sein d’un document qui utilisent une langue différente de celle de l’interface utilisateur de l’application. |
QAccessible::Attribute::Orientation (since Qt 6.11) | 3 | Type de valeur : Qt::Orientation Orientation de l'élément. Cet attribut correspond conceptuellement à la propriété « aria-orientation » d’ARIA. |
Cette énumération a été introduite dans Qt 6.8.
Voir également QAccessibleAttributesInterface.
enum QAccessible::Event
Ce type d'énumération définit les types d'événements accessibles.
| Constante | Valeur | Description |
|---|---|---|
QAccessible::AcceleratorChanged | 0x80C0 | Le raccourci clavier d'une action a été modifié. |
QAccessible::ActionChanged | 0x0101 | Une action a été modifiée. |
QAccessible::ActiveDescendantChanged | 0x0102 | |
QAccessible::Alert | 0x0002 | Une alerte système (par exemple, un message provenant d'un QMessageBox) |
QAccessible::Announcement (since Qt 6.8) | 0x80D0 | L'annonce d'un message est demandée. |
QAccessible::AttributeChanged | 0x0103 | |
QAccessible::ContextHelpEnd | 0x000D | L'aide contextuelle (QWhatsThis) relative à un objet est terminée. |
QAccessible::ContextHelpStart | 0x000C | L'aide contextuelle (QWhatsThis) d'un objet est lancée. |
QAccessible::DefaultActionChanged | 0x80B0 | L'action par défaut QAccessible::Action de l'objet accessible a changé. |
QAccessible::DescriptionChanged | 0x800D | L'QAccessible::Description de l'objet a changé. |
QAccessible::DialogEnd | 0x0011 | Une boîte de dialogue (QDialog) a été masquée. |
QAccessible::DialogStart | 0x0010 | Une boîte de dialogue (QDialog) a été rendue visible. |
QAccessible::DocumentContentChanged | 0x0104 | Le contenu d’un document texte a changé. |
QAccessible::DocumentLoadComplete | 0x0105 | Un document a été chargé. |
QAccessible::DocumentLoadStopped | 0x0106 | Le chargement d’un document a été interrompu. |
QAccessible::DocumentReload | 0x0107 | Le rechargement d'un document a été lancé. |
QAccessible::DragDropEnd | 0x000F | Une opération de glisser-déposer est sur le point de se terminer. |
QAccessible::DragDropStart | 0x000E | Une opération de glisser-déposer est sur le point d'être lancée. |
QAccessible::Focus | 0x8005 | Un objet a obtenu le focus clavier. |
QAccessible::ForegroundChanged | 0x0003 | Une fenêtre a été activée (c'est-à-dire qu'une nouvelle fenêtre a obtenu le focus sur le bureau). |
QAccessible::HelpChanged | 0x80A0 | La propriété de texte « QAccessible::Help » d’un objet a changé. |
QAccessible::HyperlinkEndIndexChanged | 0x0108 | La position de fin du texte d'affichage d'un lien hypertexte a changé. |
QAccessible::HyperlinkNumberOfAnchorsChanged | 0x0109 | Le nombre d'ancres dans un lien hypertexte a changé, peut-être parce que le texte affiché a été divisé pour créer plusieurs liens. |
QAccessible::HyperlinkSelectedLinkChanged | 0x010A | Le lien associé au lien hypertexte sélectionné a changé. |
QAccessible::HyperlinkStartIndexChanged | 0x010D | La position de début du texte affiché d’un lien hypertexte a changé. |
QAccessible::HypertextChanged | 0x010E | Le texte affiché d’un lien hypertexte a changé. |
QAccessible::HypertextLinkActivated | 0x010B | Un lien hypertexte a été activé, peut-être par un clic ou par une pression sur une touche. |
QAccessible::HypertextLinkSelected | 0x010C | Un lien hypertexte a été sélectionné. |
QAccessible::HypertextNLinksChanged | 0x010F | |
QAccessible::IdentifierChanged (since Qt 6.8) | 0x80E0 | L'identifiant d'un objet a changé. |
QAccessible::LocationChanged | 0x800B | L'emplacement d'un objet à l'écran a changé. |
QAccessible::MenuCommand | 0x0018 | Un élément de menu a été déclenché. |
QAccessible::MenuEnd | 0x0005 | Un menu a été fermé (Qt utilise PopupMenuEnd pour tous les menus). |
QAccessible::MenuStart | 0x0004 | Un menu a été ouvert dans la barre de menus (Qt utilise PopupMenuStart pour tous les menus). |
QAccessible::NameChanged | 0x800C | La propriété « QAccessible::Name » d'un objet a changé. |
QAccessible::ObjectAttributeChanged | 0x0110 | |
QAccessible::ObjectCreated | 0x8000 | Un nouvel objet est créé. |
QAccessible::ObjectDestroyed | 0x8001 | Un objet est supprimé. |
QAccessible::ObjectHide | 0x8003 | Un objet est masqué ; par exemple, avec ` QWidget::hide()`. Les enfants de l'objet masqué n'envoient pas cet événement. Il n'est pas envoyé lorsqu'un objet est masqué parce qu'il est recouvert par d'autres. |
QAccessible::ObjectReorder | 0x8004 | Une disposition ou une vue d'élément a ajouté, supprimé ou déplacé un objet (Qt n'utilise pas cet événement). |
QAccessible::ObjectShow | 0x8002 | Un objet est affiché ; par exemple, avec ` QWidget::show()`. |
QAccessible::PageChanged | 0x0111 | |
QAccessible::ParentChanged | 0x800F | L'objet parent d'un objet a changé. |
QAccessible::PopupMenuEnd | 0x0007 | Un menu contextuel s’est fermé. |
QAccessible::PopupMenuStart | 0x0006 | Un menu contextuel s'est ouvert. |
QAccessible::RoleChanged (since Qt 6.11) | 0x80E1 | Le rôle d’un objet a changé. |
QAccessible::ScrollingEnd | 0x0013 | Une opération de défilement de la barre de défilement s'est terminée (la souris a relâché la poignée du curseur). |
QAccessible::ScrollingStart | 0x0012 | Une opération de défilement de la barre de défilement est sur le point de commencer ; cela peut être provoqué, par exemple, par un clic de souris sur le curseur. |
QAccessible::ScrollingPositionChanged (since Qt 6.12) | 0x0014 | La position a changé au cours d'une opération de défilement. |
QAccessible::SectionChanged | 0x0112 | |
QAccessible::SelectionAdd | 0x8007 | Un élément a été ajouté à la sélection dans une vue d'éléments. |
QAccessible::SelectionRemove | 0x8008 | Un élément a été supprimé de la sélection d'une vue d'éléments. |
QAccessible::Selection | 0x8006 | La sélection a changé dans un menu ou une vue d'éléments. |
QAccessible::SelectionWithin | 0x8009 | Plusieurs modifications ont été apportées à une sélection dans une vue d'éléments. |
QAccessible::SoundPlayed | 0x0001 | Un son a été lu par un objet. |
QAccessible::TableCaptionChanged | 0x0113 | La légende d’un tableau a été modifiée. |
QAccessible::TableColumnDescriptionChanged | 0x0114 | La description d'une colonne de tableau, généralement indiquée dans l'en-tête de la colonne, a été modifiée. |
QAccessible::TableColumnHeaderChanged | 0x0115 | L'en-tête d'une colonne du tableau a été modifié. |
QAccessible::TableRowDescriptionChanged | 0x0117 | La description d’une ligne du tableau, qui figure généralement dans l’en-tête de la ligne, a été modifiée. |
QAccessible::TableRowHeaderChanged | 0x0118 | L'en-tête d'une ligne de tableau a été modifié. |
QAccessible::TableSummaryChanged | 0x0119 | Le résumé d'un tableau a été modifié. |
QAccessible::TextColumnChanged | 0x011D | Une colonne de texte a été modifiée. |
QAccessible::VisibleDataChanged | 0x0122 |
Les valeurs de cette énumération sont définies de manière à correspondre à celles définies dans les spécifications IAccessible2 et MSAA.
QAccessible::Id
Synonyme de « non signé », utilisé par le cache de l'QAccessibleInterface.
QAccessible::InterfaceFactory
Il s'agit d'un typedef pour un pointeur vers une fonction présentant la signature suivante :
typedef QAccessibleInterface *myFactoryFunction(const QString &key, QObject *);La fonction reçoit un QString et un pointeur QObject, où l’ QString est la clé identifiant l’interface. L’ QObject est utilisé pour être transmis à l’ QAccessibleInterface afin que celle-ci puisse conserver une référence à celui-ci.
Si la clé et l’ QObject ne correspondent à aucun QAccessibleInterface, nullptr sera renvoyé.
Les fabriques installées sont appelées par `queryAccessibilityInterface()` jusqu’à ce que l’une d’entre elles fournisse une interface.
enum QAccessible::InterfaceType
QAccessibleInterface prend en charge plusieurs sous-interfaces. Afin de fournir davantage d'informations sur certains objets, leur représentation accessible doit implémenter une ou plusieurs de ces interfaces.
Remarque : lors de la création d'une sous-classe de l'une de ces interfaces, la méthode ` QAccessibleInterface::interface_cast()` doit être implémentée.
| Constante | Valeur | Description |
|---|---|---|
QAccessible::TextInterface | 0 | Pour le texte permettant des sélections ou comportant plusieurs lignes. Les étiquettes simples n’ont pas besoin d’implémenter cette interface. |
QAccessible::ValueInterface | 2 | Pour les objets utilisés pour manipuler une valeur, par exemple un curseur ou une barre de défilement. |
QAccessible::ActionInterface | 3 | Pour les objets interactifs qui permettent à l'utilisateur de déclencher une action. En gros, tout ce qui permet, par exemple, une interaction avec la souris. |
QAccessible::TableInterface | 5 | Pour les listes, les tableaux et les arborescences. |
QAccessible::TableCellInterface | 6 | Pour les cellules d’un objet TableInterface. |
QAccessible::HyperlinkInterface | 7 | Pour les nœuds de lien hypertexte (généralement intégrés en tant qu’enfants de nœuds de texte) |
QAccessible::SelectionInterface (since Qt 6.5) | 8 | Pour les objets non textuels qui prennent en charge la sélection d’objets enfants. |
QAccessible::AttributesInterface (since Qt 6.8) | 9 | Pour les objets prenant en charge des attributs spécifiques à l'objet. |
QAccessible::ViewportInterface (since Qt 6.12) | 10 | Pour les objets permettant un défilement bidimensionnel ou indexé. |
Voir également QAccessibleInterface::interface_cast(), QAccessibleTextInterface, QAccessibleValueInterface, QAccessibleActionInterface, QAccessibleTableInterface, QAccessibleTableCellInterface, QAccessibleSelectionInterface, QAccessibleAttributesInterface et QAccessibleViewportInterface.
enum QAccessible::RelationFlag
flags QAccessible::Relation
Ce type d'énumération définit des indicateurs binaires qui peuvent être combinés pour indiquer la relation entre deux objets accessibles. Il est utilisé par la fonction relations(), qui renvoie une liste de toutes les interfaces associées à l'objet appelant, ainsi que les relations pour chaque objet.
Chaque entrée de la liste est un std::pair dont le membre second stocke le ou les types de relation entre l’objet returned représenté par le membre first et l’interface/l’objet origin (l’appelant).
Dans le tableau ci-dessous, l’objet returned fait référence à l’objet de la liste renvoyée, tandis que l’objet origin est celui représenté par l’interface appelante.
| Constante | Valeur | Description |
|---|---|---|
QAccessible::Label | 0x00000001 | L'objet « returned » correspond au libellé de l'objet « origin ». |
QAccessible::Labelled | 0x00000002 | L’objet returned est étiqueté par l’objet origin. |
QAccessible::Controller | 0x00000004 | L'objet « returned » contrôle l'objet « origin ». |
QAccessible::Controlled | 0x00000008 | L’objet « returned » est contrôlé par l’objet « origin ». |
QAccessible::DescriptionFor (since Qt 6.6) | 0x00000010 | L’objet « returned » fournit une description de l’objet « origin ». |
QAccessible::Described (since Qt 6.6) | 0x00000020 | L’objet « returned » est décrit par l’objet « origin ». |
QAccessible::FlowsFrom (since Qt 6.6) | 0x00000040 | Le contenu s’écoule logiquement de l’objet « returned » vers l’objet « origin ». |
QAccessible::FlowsTo (since Qt 6.6) | 0x00000080 | Le contenu circule logiquement de l’objet « origin » vers l’objet « returned ». |
QAccessible::AllRelations | 0xffffffff | Utilisé comme masque pour indiquer que nous nous intéressons aux informations concernant toutes les relations |
Les implémentations de relations() renvoient une combinaison de ces indicateurs. Certaines valeurs s’excluent mutuellement.
Le type `Relation` est un `typedef` pour `QFlags<RelationFlag>`. Il stocke une combinaison « OU » de valeurs `RelationFlag`.
enum QAccessible::Role
Cette énumération définit le rôle d'un objet accessible. Les rôles sont les suivants :
| Constante | Valeur | Description |
|---|---|---|
QAccessible::AlertMessage | 0x00000008 | Objet utilisé pour alerter l'utilisateur. |
QAccessible::Animation | 0x00000036 | Un objet qui affiche une animation. |
QAccessible::Application | 0x0000000E | Un objet représentant l'application |
QAccessible::Assistant | 0x00000020 | Un objet qui fournit une aide interactive. |
QAccessible::BlockQuote (since Qt 6.9) | 0x431 | Une section de contenu tirée d'une autre source. |
QAccessible::Border | 0x00000013 | Un objet représentant une bordure. |
QAccessible::ButtonDropDown | 0x00000038 | Un bouton qui affiche une liste déroulante d'éléments. |
QAccessible::ButtonDropGrid | 0x0000003A | Un bouton qui affiche une grille. |
QAccessible::ButtonMenu | 0x00000039 | Un bouton qui affiche un menu déroulant. |
QAccessible::Canvas | 0x00000035 | Un objet affichant des graphiques avec lesquels l'utilisateur peut interagir. |
QAccessible::Caret | 0x00000007 | Un objet représentant le curseur système (curseur de texte). |
QAccessible::Cell | 0x0000001D | Une cellule dans un tableau. |
QAccessible::Chart | 0x00000011 | Un objet qui affiche une représentation graphique des données. |
QAccessible::CheckBox | 0x0000002C | Un objet représentant une option pouvant être cochée ou décochée. Certaines options peuvent présenter un état « intermédiaire », c'est-à-dire ni cochée ni décochée. |
QAccessible::Client | 0x0000000A | La zone client d'une fenêtre. |
QAccessible::Clock | 0x0000003D | Une horloge affichant l'heure. |
QAccessible::ColorChooser | 0x404 | Une boîte de dialogue permettant à l'utilisateur de choisir une couleur. |
QAccessible::Column | 0x0000001B | Une colonne de cellules, généralement dans un tableau. |
QAccessible::ColumnHeader | 0x00000019 | Un en-tête pour une colonne de données. |
QAccessible::ComboBox | 0x0000002E | Une liste de choix parmi lesquels l'utilisateur peut effectuer une sélection. |
QAccessible::ComplementaryContent | 0x42C | Une partie du document ou de la page web qui complète le contenu principal, généralement un repère (voir WAI-ARIA). |
QAccessible::Cursor | 0x00000006 | Un objet représentant le curseur de la souris. |
QAccessible::Desktop | 0x00000082 | L'objet représente le bureau ou l'espace de travail. |
QAccessible::Dial | 0x00000031 | Un objet représentant un cadran ou un bouton rotatif. |
QAccessible::Dialog | 0x00000012 | Une boîte de dialogue. |
QAccessible::Document | 0x0000000F | Un document, par exemple dans une application bureautique. |
QAccessible::EditableText | 0x0000002A | Du texte modifiable, tel qu’une ligne ou un champ de saisie. |
QAccessible::Equation | 0x00000037 | Un objet représentant une équation mathématique. |
QAccessible::Footer | 0x40E | Un pied de page (généralement dans les documents). |
QAccessible::Form | 0x410 | Un formulaire Web contenant des contrôles. |
QAccessible::Graphic | 0x00000028 | Un graphique ou une image, par exemple une icône. |
QAccessible::Grip | 0x00000004 | Une poignée que l'utilisateur peut faire glisser pour modifier la taille des widgets. |
QAccessible::Grouping | 0x00000014 | Un objet représentant un regroupement logique d'autres objets. |
QAccessible::Heading | 0x414 | Un titre dans un document. |
QAccessible::HelpBalloon | 0x0000001F | Un objet qui affiche une aide dans une fenêtre distincte et éphémère. |
QAccessible::HotkeyField | 0x00000032 | Un champ de raccourci clavier permettant à l'utilisateur de saisir une séquence de touches. |
QAccessible::Indicator | 0x00000027 | Un indicateur représentant une valeur ou un élément actuel. |
QAccessible::LayeredPane | 0x00000080 | Un objet pouvant contenir des enfants imbriqués, par exemple dans une pile. |
QAccessible::Link | 0x0000001E | Un lien vers un autre élément. |
QAccessible::List | 0x00000021 | Une liste d'éléments, parmi lesquels l'utilisateur peut en sélectionner un ou plusieurs. |
QAccessible::ListItem | 0x00000022 | Un élément d’une liste d’éléments. |
QAccessible::MenuBar | 0x00000002 | Une barre de menus à partir de laquelle l'utilisateur peut ouvrir des menus. |
QAccessible::MenuItem | 0x0000000C | Un élément d'un menu ou d'une barre de menus. |
QAccessible::NoRole | 0x00000000 | L'objet n'a aucun rôle. Cela indique généralement un objet non valide. |
QAccessible::Note | 0x41B | Une section dont le contenu est accessoire ou complémentaire au contenu principal de la ressource. |
QAccessible::Notification | 0x00000086 | Un objet représentant une notification (par exemple, dans la barre d'état système). Ce rôle n'a d'effet que sous Linux. |
QAccessible::PageTab | 0x00000025 | Un onglet de page que l'utilisateur peut sélectionner pour passer à une autre page dans une boîte de dialogue. |
QAccessible::PageTabList | 0x0000003C | Une liste d'onglets de page. |
QAccessible::Paragraph | 0x00000083 | Un paragraphe de texte (que l'on trouve généralement dans les documents). |
QAccessible::Pane | 0x00000010 | Un conteneur générique. |
QAccessible::PopupMenu | 0x0000000B | Un menu répertoriant les options que l’utilisateur peut sélectionner pour effectuer une action. |
QAccessible::ProgressBar | 0x00000030 | L'objet affiche la progression d'une opération en cours. |
QAccessible::PropertyPage | 0x00000026 | Une page de propriétés où l'utilisateur peut modifier les options et les paramètres. |
QAccessible::Button | 0x0000002B | Un bouton. |
QAccessible::RadioButton | 0x0000002D | Un objet représentant une option qui s'exclut mutuellement avec d'autres options. |
QAccessible::Row | 0x0000001C | Une ligne de cellules, généralement dans un tableau. |
QAccessible::RowHeader | 0x0000001A | Un en-tête pour une ligne de données. |
QAccessible::ScrollBar | 0x00000003 | Une barre de défilement, qui permet à l'utilisateur de faire défiler la zone visible. |
QAccessible::Section | 0x00000085 | Une section (dans un document). |
QAccessible::Separator | 0x00000015 | Un séparateur qui divise l'espace en zones logiques. |
QAccessible::Slider | 0x00000033 | Un curseur permettant à l'utilisateur de sélectionner une valeur dans une plage donnée. |
QAccessible::Sound | 0x00000005 | Un objet représentant un son. |
QAccessible::SpinBox | 0x00000034 | Un widget « spin box » permettant à l'utilisateur de saisir une valeur dans une plage donnée. |
QAccessible::Splitter | 0x0000003E | Un séparateur répartissant l'espace disponible entre ses widgets enfants. |
QAccessible::StaticText | 0x00000029 | Du texte statique, tel que des libellés pour d'autres widgets. |
QAccessible::StatusBar | 0x00000017 | Une barre d'état. |
QAccessible::Switch (since Qt 6.11) | 0x00000087 | Un commutateur pouvant être activé ou désactivé. |
QAccessible::Table | 0x00000018 | Un tableau représentant des données sous forme de grille de lignes et de colonnes. |
QAccessible::Terminal | 0x00000081 | Un terminal ou une interface en ligne de commande. |
QAccessible::TitleBar | 0x00000001 | Le libellé de la barre de titre d'une fenêtre. |
QAccessible::ToolBar | 0x00000016 | Une barre d'outils, qui regroupe les widgets auxquels l'utilisateur accède fréquemment. |
QAccessible::ToolTip | 0x0000000D | Une info-bulle fournissant des informations sur d'autres objets. |
QAccessible::Tree | 0x00000023 | Une liste d'éléments dans une arborescence. |
QAccessible::TreeItem | 0x00000024 | Un élément d'une arborescence. |
QAccessible::UserRole | 0x0000ffff | La première valeur à utiliser pour les rôles définis par l'utilisateur. |
QAccessible::WebDocument | 0x00000084 | Document HTML, généralement dans un navigateur. |
QAccessible::Whitespace | 0x0000003B | Espace vide entre d’autres objets. |
QAccessible::Window | 0x00000009 | Une fenêtre de niveau supérieur. |
enum QAccessible::Text
Cette énumération spécifie les informations sous forme de chaîne de caractères renvoyées par un objet accessible.
| Constante | Valeur | Description |
|---|---|---|
QAccessible::Name | 0 | Le nom de l’objet. Il peut être utilisé à la fois comme identifiant et comme brève description par les clients accessibles. |
QAccessible::Description | 1 | Un texte court décrivant l’objet. |
QAccessible::Value | 2 | La valeur de l'objet. |
QAccessible::Help | 3 | Un texte plus long fournissant des informations sur l'utilisation de l'objet. |
QAccessible::Accelerator | 4 | Le raccourci clavier qui exécute l'action par défaut de l'objet. |
QAccessible::UserText | 0x0000ffff | La première valeur à utiliser pour le texte défini par l'utilisateur. |
QAccessible::Identifier (since Qt 6.8) | 6 | Un identifiant pour l'objet, par exemple pour les tests d'interface utilisateur. |
enum QAccessible::TextBoundaryType
Cette énumération décrit différents types de limites de texte. Elle respecte l'API IAccessible2 et est utilisée dans l'QAccessibleTextInterface.
| Constante | Valeur | Description |
|---|---|---|
QAccessible::CharBoundary | 0 | Utilise des caractères individuels comme limites. |
QAccessible::WordBoundary | 1 | Utilise les mots comme limites. |
QAccessible::SentenceBoundary | 2 | Utiliser des phrases comme délimiteurs. |
QAccessible::ParagraphBoundary | 3 | Utiliser les paragraphes comme délimiteurs. |
QAccessible::LineBoundary | 4 | Utiliser les sauts de ligne comme délimiteurs. |
QAccessible::NoBoundary | 5 | Pas de délimitation (utiliser l'intégralité du texte). |
Voir aussi QAccessibleTextInterface.
Documentation des fonctions membres
[static] QAccessibleInterface *QAccessible::accessibleInterface(QAccessible::Id id)
Renvoie l'QAccessibleInterface associé à l'id.
Renvoie « nullptr » si l'identifiant n'est pas valide.
[static] void QAccessible::deleteAccessibleInterface(QAccessible::Id id)
Supprime de la mémoire cache l'interface associée à cette id et la supprime. L'identifiant devient invalide et peut être réutilisé par la mémoire cache.
[static] void QAccessible::installFactory(QAccessible::InterfaceFactory factory)
Installe l'InterfaceFactory factory . La dernière factory ajoutée est la première utilisée par queryAccessibleInterface().
[static] bool QAccessible::isActive()
Renvoie ` true ` si la plateforme a demandé des informations d'accessibilité.
Cette fonction renverra « false » jusqu’à ce qu’un outil, tel qu’un lecteur d’écran, accède au framework d’accessibilité. Il est toujours possible d’utiliser ` QAccessible::queryAccessibleInterface()` même si l’accessibilité n’est pas active. Cependant, aucune notification ne sera envoyée à la plateforme.
Il est recommandé d’utiliser cette fonction pour éviter les notifications coûteuses via ` updateAccessibility()` lorsqu’elles ne sont pas nécessaires.
[static] QAccessibleInterface *QAccessible::queryAccessibleInterface(QObject *object)
Si une implémentation de ` QAccessibleInterface ` existe pour l'object` donné, cette fonction renvoie un pointeur vers cette implémentation ; sinon, elle renvoie ` nullptr`.
La fonction appelle toutes les fonctions d’usine installées (de la plus récente à la plus ancienne) jusqu’à ce qu’elle en trouve une qui fournisse une interface pour la classe object. Si aucune fonction d’usine ne peut fournir d’implémentation d’accessibilité pour la classe, la fonction charge les plugins d’accessibilité installés et vérifie si l’un d’entre eux peut fournir l’implémentation.
Si aucune implémentation n’est disponible pour la classe de l’objet, la fonction tente de trouver une implémentation pour la classe parente de l’objet, en utilisant la stratégie décrite ci-dessus.
Toutes les interfaces sont gérées par un cache interne et ne doivent pas être supprimées.
[static] QAccessible::Id QAccessible::registerAccessibleInterface(QAccessibleInterface *iface)
Appelez cette fonction pour vous assurer que les interfaces créées manuellement sont correctement gérées en mémoire.
Elle ne doit être appelée qu'une seule fois par interface iface. Elle est appelée implicitement lors de l'appel à queryAccessibleInterface; son appel n'est nécessaire que lorsque les QAccessibleInterfaces sont instanciées à l'aide de l'opérateur « new ». Cette pratique n'est pas recommandée ; dans la mesure du possible, utilisez les fonctions par défaut et laissez queryAccessibleInterface() s'en charger.
Lorsqu’il est nécessaire de réimplémenter la fonction QAccessibleInterface::child() et de renvoyer l’élément enfant après sa construction, cette fonction doit être appelée.
[static] void QAccessible::removeFactory(QAccessible::InterfaceFactory factory)
Supprime « factory » de la liste des InterfaceFactories installées.
[static] void QAccessible::setRootObject(QObject *object)
Définit l'objet racine des objets accessibles de cette application sur object. Tous les autres objets accessibles sont accessibles via la navigation entre objets à partir de l'objet racine.
En règle générale, il n’est pas nécessaire d’appeler cette fonction, car Qt définit l’objet QApplication comme objet racine juste avant l’entrée dans la boucle d’événements dans QApplication::exec().
Utilisez QAccessible::installRootObjectHandler() pour rediriger l’appel de fonction vers une fonction de gestion personnalisée.
Voir également ` queryAccessibleInterface()`.
[static] QAccessible::Id QAccessible::uniqueId(QAccessibleInterface *iface)
Renvoie l'identifiant unique de l'QAccessibleInterface iface .
[static] void QAccessible::updateAccessibility(QAccessibleEvent *event)
Signale une modification susceptible d'intéresser les utilisateurs de solutions d'accessibilité.
event Fournit des détails sur la modification. Ceux-ci incluent la source et la nature de la modification. L'event doit contenir suffisamment d'informations pour permettre des notifications pertinentes.
Par exemple, le type « ValueChange » indique que la position d’un curseur a été modifiée.
Appelez cette fonction chaque fois que l'état de votre objet accessible ou de l'un de ses sous-éléments a été modifié, que ce soit par programmation (par exemple en appelant ` QLabel::setText()`) ou par une interaction de l'utilisateur.
S’il n’y a aucun outil d’accessibilité à l’écoute de cet événement, la perte de performances liée à l’appel de cette fonction est minime ; toutefois, si la détermination des paramètres de l’appel est coûteuse, vous pouvez tester QAccessible::isActive() afin d’éviter tout calcul inutile.
© 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.