QAccessible Class
La classe QAccessible fournit des énums et des fonctions statiques relatives à l'accessibilité. Plus d'informations...
| 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, …, AttributesInterface } |
| 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é des applications QWidget.
Les applications accessibles peuvent être utilisées par des personnes qui ne sont pas en mesure d'utiliser des applications par des moyens conventionnels.
Les fonctions de cette classe sont utilisées pour 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 par le biais d'appels à la fonction updateAccessibility().
- Les clients AT demandent des informations sur les objets du serveur. La classe QAccessibleInterface est l'interface principale et encapsule ces informations dans une API virtuelle pure. Les implémentations de l'interface sont fournies par Qt XML à travers l'API queryAccessibleInterface().
La communication entre les serveurs et les clients est initialisée par la fonction setRootObject(). Des pointeurs de fonction peuvent être installés pour remplacer ou étendre le comportement par défaut des fonctions statiques de QAccessible.
Qt prend en charge l'accessibilité active de Microsoft (MSAA), l'accessibilité de 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 Unix/X11 AT-SPI, les applications deviennent accessibles lorsque deux conditions sont remplies :
- la propriété DBus org.a11y.Status.IsEnabled est vraie
- la propriété DBus org.a11y.Status.ScreenReaderEnabled est vraie.
Une alternative à la définition des propriétés AT-SPI de DBus est de définir la variable d'environnement QT_LINUX_ACCESSIBILITY_ALWAYS_ON.
En plus des fonctions statiques de QAccessible, Qt Widgets offre une interface générique, QAccessibleInterface, qui peut être utilisée pour envelopper tous les widgets et objets (par exemple, QPushButton). Cette interface unique fournit toutes les métadonnées nécessaires aux technologies d'assistance. Qt Widgets fournit des implémentations de cette interface pour ses widgets intégrés en tant que plugins.
Lorsque vous développez des widgets personnalisés, vous pouvez créer des sous-classes personnalisées de QAccessibleInterface et les distribuer en tant que plugins (à l'aide de QAccessiblePlugin) ou les compiler dans l'application. De même, le support d'accessibilité prédéfini de Qt peut être construit 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 effectivement utilisées ; elles ne ralentissent pas le cas courant où aucune technologie d'assistance n'est utilisée.
Qt Help comprend également deux classes de commodité, QAccessibleObject et QAccessibleWidget, qui héritent de QAccessibleInterface et fournissent le plus petit dénominateur commun de métadonnées (par exemple, la géométrie du widget, le titre de la fenêtre, le texte d'aide de base). Vous pouvez les utiliser comme classes de base pour envelopper 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 QAccessibleAnnouncementEvent.
Avec QAccessible::AnouncementPoliteness::Polite, les technologies d'assistance doivent annoncer le message à la prochaine occasion favorable, par exemple à la fin de l'énoncé de la phrase en cours ou lorsque l'utilisateur interrompt sa frappe.
Lorsqu'elles spécifient QAccessible::AnouncementPoliteness::Assertive, les technologies d'assistance doivent avertir l'utilisateur immédiatement.
Étant donné qu'une interruption peut désorienter l'utilisateur ou l'empêcher d'achever sa tâche, 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 liste a été introduite dans Qt 6.8.
Voir également QAccessibleAnnouncementEvent.
[since 6.8] enum class QAccessible::Attribute
Cette énumération décrit différents types d'attributs utilisés par QAccessibleAttributesInterface.
Ces attributs sont comparables au concept de propriétés/attributs (d'objets) que l'on trouve dans ARIA, AT-SPI2, IAccessible, UIA et NSAccessibility et sont mis en correspondance avec leur équivalent sur la plate-forme, le cas échéant.
Chaque attribut est traité comme une paire clé-valeur, les valeurs de cette énumération étant utilisées comme 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 de la valeur |
|---|---|---|
QAccessible::Attribute::Custom | 0 | type de valeur : QHash<QString, QString> L'attribut Custom est spécial en ce sens qu'il peut effectivement représenter plusieurs attributs à la fois, puisqu'il est lui-même un QHash utilisé pour représenter des paires clé-valeur. Pour les plates-formes prenant en charge des paires clé-valeur personnalisées pour les attributs, celles définies dans l'attribut Custom sont transmises à la couche plate-forme sans appliquer de traduction aux attributs spécifiques à la plate-forme. En général, il convient d'utiliser les autres attributs, plus fortement typés. Cet attribut peut par exemple être utilisé pour le prototypage avant d'ajouter officiellement une nouvelle valeur d'énumération pour une caractéristique 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'en-tête d'une rubrique. Cet attribut correspond conceptuellement à la propriété "aria-level" dans ARIA. |
QAccessible::Attribute::Locale (since Qt 6.10) | 2 | value type : QLocale Locale de l'élément. Cet attribut peut être utilisé pour spécifier qu'un élément a une locale différente de la locale par défaut de l'application, par exemple pour les documents ou les paragraphes d'un document qui utilisent une langue différente de la langue 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" dans ARIA. |
Cette énumération a été introduite dans Qt 6.8.
Voir aussi QAccessibleAttributesInterface.
enum QAccessible::Event
Ce type d'énumération définit les types d'événements accessibles.
| Constante | Valeur | Description de l'événement |
|---|---|---|
QAccessible::AcceleratorChanged | 0x80C0 | L'accélérateur de clavier d'une action a été modifié. |
QAccessible::ActionChanged | 0x0101 | Une action a été modifiée. |
QAccessible::ActiveDescendantChanged | 0x0102 | |
QAccessible::Alert | 0x0002 | Alerte système (par exemple, un message provenant d'un site 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) pour un objet est terminée. |
QAccessible::ContextHelpStart | 0x000C | L'aide contextuelle (QWhatsThis) pour un objet est lancée. |
QAccessible::DefaultActionChanged | 0x80B0 | La QAccessible::Action par défaut de l'objet accessible a changé. |
QAccessible::DescriptionChanged | 0x800D | L'adresse 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 | Un rechargement de document a été initié. |
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 la focalisation du clavier. |
QAccessible::ForegroundChanged | 0x0003 | Une fenêtre a été activée (c'est-à-dire qu'une nouvelle fenêtre a été mise en évidence sur le bureau). |
QAccessible::HelpChanged | 0x80A0 | La propriété de texte QAccessible::Help d'un objet a été modifiée. |
QAccessible::HyperlinkEndIndexChanged | 0x0108 | La position finale du texte affiché pour un lien hypertexte a changé. |
QAccessible::HyperlinkNumberOfAnchorsChanged | 0x0109 | Le nombre d'ancres d'un lien hypertexte a changé, peut-être parce que le texte affiché a été divisé pour fournir plus d'un lien. |
QAccessible::HyperlinkSelectedLinkChanged | 0x010A | Le lien du lien hypertexte sélectionné a changé. |
QAccessible::HyperlinkStartIndexChanged | 0x010D | La position de départ du texte affiché d'un lien hypertexte a changé. |
QAccessible::HypertextChanged | 0x010E | Le texte d'affichage d'un lien hypertexte a changé. |
QAccessible::HypertextLinkActivated | 0x010B | Un lien hypertexte a été activé, par exemple par un clic ou 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 sur l'écran a changé. |
QAccessible::MenuCommand | 0x0018 | Un élément de menu est 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 été modifiée. |
QAccessible::ObjectAttributeChanged | 0x0110 | |
QAccessible::ObjectCreated | 0x8000 | Un nouvel objet est créé. |
QAccessible::ObjectDestroyed | 0x8001 | Un objet est supprimé. |
QAccessible::ObjectHide | 0x8003 | Un objet est caché, par exemple avec QWidget::hide(). Cet événement n'est pas envoyé aux enfants de l'objet caché. Il n'est pas envoyé lorsqu'un objet est caché parce qu'il est masqué par d'autres. |
QAccessible::ObjectReorder | 0x8004 | Une vue de disposition ou 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 l'ascenseur est terminée (la souris a relâché la poignée du curseur). |
QAccessible::ScrollingStart | 0x0012 | Une opération de défilement est sur le point de commencer ; elle peut être provoquée par une pression de la souris sur la poignée du curseur, par exemple. |
QAccessible::SectionChanged | 0x0112 | |
QAccessible::SelectionAdd | 0x8007 | Un élément a été ajouté à la sélection dans une vue d'élément. |
QAccessible::SelectionRemove | 0x8008 | Un élément a été supprimé de la sélection d'une vue d'élément. |
QAccessible::Selection | 0x8006 | La sélection a changé dans une vue de menu ou d'élément. |
QAccessible::SelectionWithin | 0x8009 | Plusieurs modifications ont été apportées à une sélection dans une vue d'élément. |
QAccessible::SoundPlayed | 0x0001 | Un son a été joué 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, qui se trouve généralement dans l'en-tête de la colonne, a été modifiée. |
QAccessible::TableColumnHeaderChanged | 0x0115 | L'en-tête d'une colonne de tableau a été modifié. |
QAccessible::TableRowDescriptionChanged | 0x0117 | La description d'une ligne de tableau, qui se trouve 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 comme étant les mêmes que celles définies dans les spécifications IAccessible2 et MSAA.
QAccessible::Id
Synonyme de unsigned, utilisé par le cache QAccessibleInterface.
QAccessible::InterfaceFactory
Il s'agit d'un typedef pour un pointeur vers une fonction avec la signature suivante :
typedef QAccessibleInterface *myFactoryFunction(const QString &key, QObject *);
La fonction reçoit un pointeur QString et un pointeur QObject, où QString est la clé identifiant l'interface. L'adresse QObject est utilisée pour passer à l'adresse QAccessibleInterface afin qu'elle puisse contenir une référence à celle-ci.
Si la clé et le QObject n'ont pas de QAccessibleInterface correspondant, nullptr sera renvoyé.
Les usines installées sont appelées par queryAccessibilityInterface() jusqu'à ce qu'une interface soit fournie.
enum QAccessible::InterfaceType
QAccessibleInterface prend en charge plusieurs sous-interfaces. Afin de fournir plus d'informations sur certains objets, leur représentation accessible doit implémenter une ou plusieurs de ces interfaces.
Remarque : lors de la sous-classification de l'une de ces interfaces, QAccessibleInterface::interface_cast() doit être implémenté.
| Constante | Valeur | Description |
|---|---|---|
QAccessible::TextInterface | 0 | Pour le texte qui prend en charge les sélections ou qui comporte plus d'une ligne. 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 arbres. |
QAccessible::TableCellInterface | 6 | Pour les cellules d'un objet TableInterface. |
QAccessible::HyperlinkInterface | 7 | Pour les nœuds d'hyperliens (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 permettent la sélection d'objets enfants. |
QAccessible::AttributesInterface (since Qt 6.8) | 9 | pour les objets qui prennent en charge des attributs spécifiques à l'objet. |
Voir aussi QAccessibleInterface::interface_cast(), QAccessibleTextInterface, QAccessibleValueInterface, QAccessibleActionInterface, QAccessibleTableInterface, QAccessibleTableCellInterface, QAccessibleSelectionInterface, et QAccessibleAttributesInterface.
enum QAccessible::RelationFlag
flags QAccessible::Relation
Ce type d'enum définit des drapeaux de bits 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 connexes de l'objet appelant, ainsi que les relations pour chaque objet.
Chaque entrée de la liste est une std::paire où le membre second stocke le(s) type(s) de relation entre l'objet returned représenté par le membre first et l'interface/objet origin (l'appelant).
Dans le tableau ci-dessous, l'objet returned fait référence à l'objet de la liste renvoyée et l'objet origin est celui représenté par l'interface appelante.
| Constante | Valeur | Description de l'objet |
|---|---|---|
QAccessible::Label | 0x00000001 | L'objet returned est l'étiquette 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 à 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 s'écoule logiquement de l'objet origin vers l'objet returned. |
QAccessible::AllRelations | 0xffffffff | Utilisé comme masque pour spécifier que nous sommes intéressés par des informations sur 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 de l'objet |
|---|---|---|
QAccessible::AlertMessage | 0x00000008 | Objet utilisé pour alerter l'utilisateur. |
QAccessible::Animation | 0x00000036 | Un objet qui affiche une animation. |
QAccessible::Application | 0x0000000E | La fenêtre principale de l'application. |
QAccessible::Assistant | 0x00000020 | Un objet qui fournit une aide interactive. |
QAccessible::BlockQuote (since Qt 6.9) | 0x431 | Une section de contenu citée d'une autre source. |
QAccessible::Border | 0x00000013 | Un objet qui représente une bordure. |
QAccessible::ButtonDropDown | 0x00000038 | Un bouton qui fait descendre une liste d'éléments. |
QAccessible::ButtonDropGrid | 0x0000003A | Un bouton qui fait descendre une grille. |
QAccessible::ButtonMenu | 0x00000039 | Un bouton qui fait descendre un menu. |
QAccessible::Canvas | 0x00000035 | Un objet qui affiche des graphiques avec lesquels l'utilisateur peut interagir. |
QAccessible::Caret | 0x00000007 | Un objet qui représente le caret du 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 qui représente une option qui peut être cochée ou décochée. Certaines options ont un état "mixte", c'est-à-dire qu'elles ne sont ni cochées ni décochées. |
QAccessible::Client | 0x0000000A | L'espace client d'une fenêtre. |
QAccessible::Clock | 0x0000003D | Une horloge affichant l'heure. |
QAccessible::ColorChooser | 0x404 | Une boîte de dialogue qui permet à l'utilisateur de choisir une couleur. |
QAccessible::Column | 0x0000001B | Une colonne de cellules, généralement dans un tableau. |
QAccessible::ColumnHeader | 0x00000019 | En-tête d'une colonne de données. |
QAccessible::ComboBox | 0x0000002E | Une liste de choix que l'utilisateur peut sélectionner. |
QAccessible::ComplementaryContent | 0x42C | Une partie du document ou de la page web qui est complémentaire au contenu principal, généralement un point de repère (voir WAI-ARIA). |
QAccessible::Cursor | 0x00000006 | 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 | Objet représentant un cadran ou un bouton. |
QAccessible::Dialog | 0x00000012 | Une boîte de dialogue. |
QAccessible::Document | 0x0000000F | Un document, par exemple dans une application bureautique. |
QAccessible::EditableText | 0x0000002A | Un texte modifiable tel qu'une ligne ou une édition de texte. |
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 qui représente un regroupement logique d'autres objets. |
QAccessible::Heading | 0x414 | Un titre dans un document. |
QAccessible::HelpBalloon | 0x0000001F | Un objet qui affiche de l'aide dans une fenêtre séparée de courte durée. |
QAccessible::HotkeyField | 0x00000032 | Un champ de raccourci clavier qui permet à l'utilisateur d'entrer une séquence de touches. |
QAccessible::Indicator | 0x00000027 | Un indicateur qui représente une valeur ou un élément courant. |
QAccessible::LayeredPane | 0x00000080 | Un objet qui peut contenir des enfants en couches, par exemple dans une pile. |
QAccessible::Link | 0x0000001E | Un lien vers quelque chose d'autre. |
QAccessible::List | 0x00000021 | Une liste d'éléments dans laquelle l'utilisateur peut sélectionner un ou plusieurs éléments. |
QAccessible::ListItem | 0x00000022 | Un élément dans une liste d'éléments. |
QAccessible::MenuBar | 0x00000002 | Une barre de menu à partir de laquelle l'utilisateur ouvre des menus. |
QAccessible::MenuItem | 0x0000000C | Un élément d'un menu ou d'une barre de menu. |
QAccessible::NoRole | 0x00000000 | L'objet n'a pas de rôle. Cela indique généralement que l'objet n'est pas valide. |
QAccessible::Note | 0x41B | Une section dont le contenu est parenthétique ou auxiliaire par rapport au contenu principal de la ressource. |
QAccessible::Notification | 0x00000086 | Un objet qui représente 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 page différente 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 qui énumère 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é où l'utilisateur peut modifier des options et des paramètres. |
QAccessible::Button | 0x0000002B | Un bouton. |
QAccessible::RadioButton | 0x0000002D | Un objet qui représente une option qui s'exclut mutuellement avec d'autres options. |
QAccessible::Row | 0x0000001C | Une rangée 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 qui permet à l'utilisateur de sélectionner une valeur dans une plage donnée. |
QAccessible::Sound | 0x00000005 | Un objet qui représente un son. |
QAccessible::SpinBox | 0x00000034 | Un widget de type "spin box" qui permet à l'utilisateur de saisir une valeur dans une fourchette donnée. |
QAccessible::Splitter | 0x0000003E | Un séparateur répartissant l'espace disponible entre ses widgets enfants. |
QAccessible::StaticText | 0x00000029 | Un texte statique, tel que des étiquettes pour d'autres widgets. |
QAccessible::StatusBar | 0x00000017 | Une barre d'état. |
QAccessible::Switch (since Qt 6.11) | 0x00000087 | Un interrupteur qui peut être activé ou désactivé. |
QAccessible::Table | 0x00000018 | Un tableau représentant des données dans une grille de lignes et de colonnes. |
QAccessible::Terminal | 0x00000081 | Un terminal ou une interface de ligne de commande. |
QAccessible::TitleBar | 0x00000001 | La légende 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 qui fournit des informations sur d'autres objets. |
QAccessible::Tree | 0x00000023 | Une liste d'éléments dans une structure arborescente. |
QAccessible::TreeItem | 0x00000024 | Un élément d'une structure arborescente. |
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 premier niveau. |
enum QAccessible::Text
Cette énumération spécifie les informations de type chaîne de caractères qu'un objet accessible renvoie.
| Constante | Valeur | Description de l'objet |
|---|---|---|
QAccessible::Name | 0 | Le nom de l'objet. Il peut être utilisé comme identifiant ou comme description succincte 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 donnant des informations sur la manière d'utiliser 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 est conforme à l'API IAccessible2 et est utilisée dans le site QAccessibleTextInterface.
| Constante | Valeur | Description |
|---|---|---|
QAccessible::CharBoundary | 0 | Utilise des caractères individuels comme limites. |
QAccessible::WordBoundary | 1 | Utiliser les mots comme limites. |
QAccessible::SentenceBoundary | 2 | Utiliser les phrases comme limites. |
QAccessible::ParagraphBoundary | 3 | Utiliser les paragraphes comme limite. |
QAccessible::LineBoundary | 4 | Utiliser les nouvelles lignes comme limite. |
QAccessible::NoBoundary | 5 | Pas de limite (utiliser tout le texte). |
Voir également QAccessibleTextInterface.
Documentation des fonctions membres
[static] QAccessibleInterface *QAccessible::accessibleInterface(QAccessible::Id id)
Renvoie le site QAccessibleInterface appartenant au site id.
Renvoie nullptr si l'identifiant n'est pas valide.
[static] void QAccessible::deleteAccessibleInterface(QAccessible::Id id)
Retire du cache l'interface appartenant à ce site id et la supprime. L'identifiant devient invalide et peut être réutilisé par le cache.
[static] void QAccessible::installFactory(QAccessible::InterfaceFactory factory)
Installe le site InterfaceFactory factory . La dernière usine ajoutée est la première utilisée par queryAccessibleInterface().
[static] bool QAccessible::isActive()
Renvoie true si la plate-forme a demandé des informations sur l'accessibilité.
Cette fonction renvoie un message faux si un outil tel qu'un lecteur d'écran a accédé au cadre d'accessibilité. Il est toujours possible d'utiliser QAccessible::queryAccessibleInterface() même si l'accessibilité n'est pas active. Mais aucune notification ne sera envoyée à la plate-forme.
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)
S'il existe une implémentation de QAccessibleInterface pour la classe donnée object, cette fonction renvoie un pointeur sur l'implémentation ; sinon, elle renvoie nullptr.
La fonction appelle toutes les fonctions d'usine installées (de la plus récente à la moins récente) jusqu'à ce qu'elle en trouve une qui fournisse une interface pour la classe de object. Si aucune usine ne peut fournir une implémentation d'accessibilité pour la classe, la fonction charge les plugins d'accessibilité installés et teste si l'un d'entre eux peut fournir l'implémentation.
Si aucune implémentation pour la classe de l'objet n'est disponible, la fonction tente de trouver une implémentation pour la classe parente de l'objet, en utilisant la stratégie 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)
Appeler cette fonction pour s'assurer que les interfaces créées manuellement sont correctement gérées en mémoire.
Ne doit être appelée qu'une seule fois par interface iface. Cette fonction est implicitement appelée lors de l'appel de queryAccessibleInterface, l'appel de cette fonction n'est nécessaire que lorsque les QAccessibleInterfaces sont instanciées à l'aide de l'opérateur "new". Ceci n'est pas recommandé, il est préférable d'utiliser les fonctions par défaut et de laisser queryAccessibleInterface() s'en charger.
Lorsqu'il est nécessaire de réimplémenter la fonction QAccessibleInterface::child() et de renvoyer l'enfant après l'avoir construit, cette fonction doit être appelée.
[static] void QAccessible::removeFactory(QAccessible::InterfaceFactory factory)
Supprime factory de la liste des fabricants d'interfaces installés.
[static] void QAccessible::setRootObject(QObject *object)
Définit l'objet racine des objets accessibles de cette application à object. Tous les autres objets accessibles sont accessibles par navigation à partir de l'objet racine.
Normalement, il n'est pas nécessaire d'appeler cette fonction, car Qt XML définit l'objet QApplication comme objet racine immédiatement avant l'entrée dans la boucle d'événements dans QApplication::exec().
Utilisez QAccessible::installRootObjectHandler() pour rediriger l'appel de la fonction vers une fonction de traitement personnalisée.
Voir aussi queryAccessibleInterface().
[static] QAccessible::Id QAccessible::uniqueId(QAccessibleInterface *iface)
Renvoie l'identifiant unique du site QAccessibleInterface iface .
[static] void QAccessible::updateAccessibility(QAccessibleEvent *event)
Notifie un changement susceptible d'intéresser les clients en matière d'accessibilité.
event fournit des détails sur la modification. Il s'agit notamment de la source et de la nature de la modification. Le type event doit contenir suffisamment d'informations pour donner des notifications significatives.
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é, soit par programmation (par exemple en appelant QLabel::setText()), soit par l'interaction de l'utilisateur.
Si aucun outil d'accessibilité n'écoute cet événement, l'appel de cette fonction est peu pénalisant en termes de performances, mais si la détermination des paramètres de l'appel est coûteuse, vous pouvez tester QAccessible::isActive() pour éviter les calculs inutiles.
© 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.