QAccessible Class
Die Klasse „QAccessible“ stellt Aufzählungen und statische Funktionen im Zusammenhang mit der Barrierefreiheit bereit. Mehr...
| Header: | #include <QAccessible> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QAccessible ist Teil der Barrierefreiheitsklassen.
Öffentliche Typen
| 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 } |
Statische öffentliche Mitglieder
| 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) |
Ausführliche Beschreibung
Diese Klasse ist Teil der Barrierefreiheit für QWidget-Anwendungen.
Barrierefreie Anwendungen können von Menschen genutzt werden, die Anwendungen nicht auf herkömmliche Weise bedienen können.
Die Funktionen dieser Klasse dienen der Kommunikation zwischen barrierefreien Anwendungen (auch als AT-Server bezeichnet) und Barrierefreiheits-Tools (AT-Clients) wie Bildschirmleseprogrammen und Braillezeilen. Clients und Server kommunizieren auf folgende Weise:
- AT-Server benachrichtigen die Clients über Ereignisse durch Aufrufe der Funktion ` updateAccessibility()`.
- AT-Clients fordern Informationen über die Objekte auf dem Server an. Die Klasse „ QAccessibleInterface “ bildet die Kernschnittstelle und kapseln diese Informationen in einer rein virtuellen API. Implementierungen der Schnittstelle werden von Qt über die API „ queryAccessibleInterface()“ bereitgestellt.
Die Kommunikation zwischen Servern und Clients wird durch die Funktion ` setRootObject()` initialisiert. Es können Funktionszeiger eingerichtet werden, um das Standardverhalten der statischen Funktionen in `QAccessible` zu ersetzen oder zu erweitern.
Qt unterstützt Microsoft Active Accessibility (MSAA), macOS Accessibility und den Unix/X11-AT-SPI-Standard. Andere Backends können mithilfe von QAccessibleBridge unterstützt werden.
In der Unix/X11-AT-SPI-Implementierung werden Anwendungen barrierefrei, wenn zwei Bedingungen erfüllt sind:
- Die DBus-Eigenschaft `org.a11y.Status.IsEnabled` ist wahr
- Die DBus-Eigenschaft „org.a11y.Status.ScreenReaderEnabled“ ist „true“
Eine Alternative zum Setzen der DBus-AT-SPI-Eigenschaften ist das Setzen der Umgebungsvariable `QT_LINUX_ACCESSIBILITY_ALWAYS_ON`.
Zusätzlich zu den statischen Funktionen von `QAccessible` bietet Qt eine generische Schnittstelle, ` QAccessibleInterface`, die zum Umschließen aller Widgets und Objekte (z. B. ` QPushButton`) verwendet werden kann. Diese einzige Schnittstelle stellt alle für die assistiven Technologien erforderlichen Metadaten bereit. Qt stellt Implementierungen dieser Schnittstelle für seine integrierten Widgets als Plugins bereit.
Wenn Sie benutzerdefinierte Widgets entwickeln, können Sie eigene Unterklassen von ` QAccessibleInterface ` erstellen und diese als Plugins (unter Verwendung von ` QAccessiblePlugin`) vertreiben oder in die Anwendung einbinden. Ebenso kann die vordefinierte Barrierefreiheitsunterstützung von Qt als Plugin (Standard) oder direkt in die Qt-Bibliothek eingebunden werden. Der Hauptvorteil der Verwendung von Plugins besteht darin, dass die Barrierefreiheitsklassen nur dann in den Arbeitsspeicher geladen werden, wenn sie tatsächlich verwendet werden; sie verlangsamen nicht den Normalfall, in dem keine assistive Technologie zum Einsatz kommt.
Qt enthält außerdem zwei Hilfsklassen, „ QAccessibleObject “ und „ QAccessibleWidget “, die von „ QAccessibleInterface “ erben und den kleinsten gemeinsamen Nenner an Metadaten bereitstellen (z. B. Widget-Geometrie, Fenstertitel, grundlegender Hilfetext). Sie können diese als Basisklassen verwenden, wenn Sie Ihre benutzerdefinierten Unterklassen von „ QObject “ oder „ QWidget “ umschließen.
Siehe auch QAccessibleInterface.
Dokumentation zu Mitgliedstypen
[since 6.8] enum class QAccessible::AnnouncementPoliteness
Diese Enumeration beschreibt die Priorität für Ansagen, die von der „ QAccessibleAnnouncementEvent “ verwendet werden.
Bei „ QAccessible::AnouncementPoliteness::Polite “ sollten assistive Technologien die Meldung bei der nächsten geeigneten Gelegenheit ansagen, beispielsweise am Ende des aktuellen Satzes oder wenn der Benutzer eine Pause beim Tippen einlegt. Eine höfliche Ansage kann dennoch eine bereits laufende höfliche Ansage unterbrechen.
Bei Angabe von „ QAccessible::AnouncementPoliteness::Assertive “ sollten assistive Technologien den Benutzer sofort benachrichtigen.
Da eine Unterbrechung Benutzer verwirren oder dazu führen kann, dass sie ihre aktuelle Aufgabe nicht abschließen, sollte „ QAccessible::AnouncementPoliteness::Assertive “ nur verwendet werden, wenn die Unterbrechung unbedingt erforderlich ist.
| Konstant | Wert | Beschreibung |
|---|---|---|
QAccessible::AnnouncementPoliteness::Polite | 0 | Die Ansage hat normale Priorität. |
QAccessible::AnnouncementPoliteness::Assertive | 1 | Die Benachrichtigung hat hohe Priorität und sollte den Benutzer sofort benachrichtigen, auch wenn dies bedeutet, dass die aktuelle Aufgabe des Benutzers unterbrochen wird. |
Diese Enumeration wurde in Qt 6.8 eingeführt.
Siehe auch „ QAccessibleAnnouncementEvent “.
[since 6.8] enum class QAccessible::Attribute
Diese Enumeration beschreibt verschiedene Arten von Attributen, die von der Schnittstelle „ QAccessibleAttributesInterface “ verwendet werden.
Diese Attribute sind vergleichbar mit dem Konzept der Eigenschaften/(Objekt-)Attribute, wie es in ARIA, AT-SPI2, IAccessible, UIA und NSAccessibility zu finden ist, und werden, soweit zutreffend, ihren entsprechenden Plattformattributen zugeordnet.
Jedes Attribut wird als Schlüssel-Wert-Paar behandelt, wobei die Werte dieser Aufzählung als Schlüssel verwendet werden.
Attributwerte werden in einem „ QVariant “ dargestellt. Der Typ des in der „ QVariant “ gespeicherten Werts ist fest vorgegeben und wird im Folgenden für jeden Attributtyp angegeben.
| Konstante | Wert | Beschreibung |
|---|---|---|
QAccessible::Attribute::Custom | 0 | Werttyp: QHash<QString, QString> Das Attribut „ Custom “ ist insofern besonders, als es effektiv mehrere Attribute gleichzeitig darstellen kann, da es selbst ein „ QHash “ ist, das zur Darstellung von Schlüssel-Wert-Paaren verwendet wird. Bei Plattformen, die benutzerdefinierte Schlüssel-Wert-Paare für Attribute unterstützen, werden die im Attribut „ Custom “ festgelegten Werte ohne jegliche Übersetzung in plattformspezifische Attribute an die Plattformebene weitergeleitet. Im Allgemeinen sollten die anderen, stärker typisierten Attribute verwendet werden. Dieses Attribut kann z. B. für das Prototyping genutzt werden, bevor offiziell ein neuer Aufzählungswert für eine bestimmte Funktion hinzugefügt wird. |
QAccessible::Attribute::Level | 1 | Werttyp: int Definiert die hierarchische Ebene eines Elements innerhalb einer Struktur, z. B. die Überschriftenebene einer Überschrift. Dieses Attribut entspricht konzeptionell der Eigenschaft „aria-level“ in ARIA. |
QAccessible::Attribute::Locale (since Qt 6.10) | 2 | Werttyp: QLocale Sprachumgebung des Elements. Damit lässt sich angeben, dass ein Element eine andere Sprachumgebung hat als die Standard-Sprachumgebung der Anwendung, z. B. für Dokumente oder Absätze innerhalb eines Dokuments, die eine andere Sprache verwenden als die Sprache der Benutzeroberfläche der Anwendung. |
QAccessible::Attribute::Orientation (since Qt 6.11) | 3 | Werttyp: Qt::Orientation Ausrichtung des Elements. Dieses Attribut entspricht konzeptionell der Eigenschaft „aria-orientation“ in ARIA. |
Diese Aufzählung wurde in Qt 6.8 eingeführt.
Siehe auch QAccessibleAttributesInterface.
enum QAccessible::Event
Dieser Enum-Typ definiert zugängliche Ereignistypen.
| Konstante | Wert | Beschreibung |
|---|---|---|
QAccessible::AcceleratorChanged | 0x80C0 | Die Tastenkombination für eine Aktion wurde geändert. |
QAccessible::ActionChanged | 0x0101 | Eine Aktion wurde geändert. |
QAccessible::ActiveDescendantChanged | 0x0102 | |
QAccessible::Alert | 0x0002 | Eine Systemmeldung (z. B. eine Meldung von einem QMessageBox) |
QAccessible::Announcement (since Qt 6.8) | 0x80D0 | Die Ansage einer Nachricht wird angefordert. |
QAccessible::AttributeChanged | 0x0103 | |
QAccessible::ContextHelpEnd | 0x000D | Die Kontexthilfe (QWhatsThis) für ein Objekt ist beendet. |
QAccessible::ContextHelpStart | 0x000C | Die Kontexthilfe (QWhatsThis) für ein Objekt wird aufgerufen. |
QAccessible::DefaultActionChanged | 0x80B0 | Die Standard-QAccessible::Action für das barrierefreie Objekt hat sich geändert. |
QAccessible::DescriptionChanged | 0x800D | Die QAccessible::Description des Objekts hat sich geändert. |
QAccessible::DialogEnd | 0x0011 | Ein Dialog (QDialog) wurde ausgeblendet. |
QAccessible::DialogStart | 0x0010 | Ein Dialog (QDialog) wurde sichtbar gemacht. |
QAccessible::DocumentContentChanged | 0x0104 | Der Inhalt eines Textdokuments hat sich geändert. |
QAccessible::DocumentLoadComplete | 0x0105 | Ein Dokument wurde geladen. |
QAccessible::DocumentLoadStopped | 0x0106 | Das Laden eines Dokuments wurde gestoppt. |
QAccessible::DocumentReload | 0x0107 | Ein erneutes Laden eines Dokuments wurde initiiert. |
QAccessible::DragDropEnd | 0x000F | Ein Drag-and-Drop-Vorgang steht kurz vor dem Abschluss. |
QAccessible::DragDropStart | 0x000E | Ein Drag-and-Drop-Vorgang steht kurz vor dem Start. |
QAccessible::Focus | 0x8005 | Ein Objekt hat den Tastaturfokus erhalten. |
QAccessible::ForegroundChanged | 0x0003 | Ein Fenster wurde aktiviert (d. h., ein neues Fenster hat den Fokus auf dem Desktop erhalten). |
QAccessible::HelpChanged | 0x80A0 | Die Texteigenschaft „ QAccessible::Help “ eines Objekts hat sich geändert. |
QAccessible::HyperlinkEndIndexChanged | 0x0108 | Die Endposition des Anzeigetextes für einen Hypertext-Link hat sich geändert. |
QAccessible::HyperlinkNumberOfAnchorsChanged | 0x0109 | Die Anzahl der Anker in einem Hypertext-Link hat sich geändert, möglicherweise weil der Anzeigetext aufgeteilt wurde, um mehr als einen Link bereitzustellen. |
QAccessible::HyperlinkSelectedLinkChanged | 0x010A | Der Link des ausgewählten Hypertext-Links hat sich geändert. |
QAccessible::HyperlinkStartIndexChanged | 0x010D | Die Startposition des Anzeigetextes für einen Hypertext-Link hat sich geändert. |
QAccessible::HypertextChanged | 0x010E | Der Anzeigetext eines Hypertext-Links hat sich geändert. |
QAccessible::HypertextLinkActivated | 0x010B | Ein Hypertext-Link wurde aktiviert, möglicherweise durch einen Klick oder einen Tastendruck. |
QAccessible::HypertextLinkSelected | 0x010C | Ein Hypertext-Link wurde ausgewählt. |
QAccessible::HypertextNLinksChanged | 0x010F | |
QAccessible::IdentifierChanged (since Qt 6.8) | 0x80E0 | Die Kennung eines Objekts hat sich geändert. |
QAccessible::LocationChanged | 0x800B | Die Position eines Objekts auf dem Bildschirm hat sich geändert. |
QAccessible::MenuCommand | 0x0018 | Ein Menüpunkt wurde ausgelöst. |
QAccessible::MenuEnd | 0x0005 | Ein Menü wurde geschlossen (Qt verwendet für alle Menüs „PopupMenuEnd“). |
QAccessible::MenuStart | 0x0004 | Ein Menü wurde in der Menüleiste geöffnet (Qt verwendet „PopupMenuStart“ für alle Menüs). |
QAccessible::NameChanged | 0x800C | Die Eigenschaft „ QAccessible::Name “ eines Objekts hat sich geändert. |
QAccessible::ObjectAttributeChanged | 0x0110 | |
QAccessible::ObjectCreated | 0x8000 | Ein neues Objekt wird erstellt. |
QAccessible::ObjectDestroyed | 0x8001 | Ein Objekt wird gelöscht. |
QAccessible::ObjectHide | 0x8003 | Ein Objekt wird ausgeblendet, beispielsweise mit ` QWidget::hide()`. Eventuelle untergeordnete Elemente des ausgeblendeten Objekts senden dieses Ereignis nicht. Es wird nicht gesendet, wenn ein Objekt ausgeblendet wird, weil es von anderen Objekten verdeckt wird. |
QAccessible::ObjectReorder | 0x8004 | Ein Layout oder eine Elementansicht hat ein Objekt hinzugefügt, entfernt oder verschoben (Qt verwendet dieses Ereignis nicht). |
QAccessible::ObjectShow | 0x8002 | Ein Objekt wird angezeigt, beispielsweise mit ` QWidget::show()`. |
QAccessible::PageChanged | 0x0111 | |
QAccessible::ParentChanged | 0x800F | Das übergeordnete Objekt eines Objekts hat sich geändert. |
QAccessible::PopupMenuEnd | 0x0007 | Ein Popup-Menü wurde geschlossen. |
QAccessible::PopupMenuStart | 0x0006 | Ein Popup-Menü wurde geöffnet. |
QAccessible::RoleChanged (since Qt 6.11) | 0x80E1 | Die Rolle eines Objekts hat sich geändert. |
QAccessible::ScrollingEnd | 0x0013 | Ein Bildlaufvorgang in der Bildlaufleiste wurde beendet (die Maustaste wurde losgelassen). |
QAccessible::ScrollingStart | 0x0012 | Ein Scrollvorgang an einer Bildlaufleiste steht kurz vor dem Start; dies kann beispielsweise durch einen Mausklick auf den Schieberegler ausgelöst werden. |
QAccessible::ScrollingPositionChanged (since Qt 6.12) | 0x0014 | Die Position hat sich während einer Bildlaufbewegung geändert. |
QAccessible::SectionChanged | 0x0112 | |
QAccessible::SelectionAdd | 0x8007 | Ein Element wurde der Auswahl in einer Elementansicht hinzugefügt. |
QAccessible::SelectionRemove | 0x8008 | Ein Element wurde aus der Auswahl einer Elementansicht entfernt. |
QAccessible::Selection | 0x8006 | Die Auswahl in einem Menü oder einer Elementansicht hat sich geändert. |
QAccessible::SelectionWithin | 0x8009 | In einer Elementansicht sind mehrere Änderungen an einer Auswahl aufgetreten. |
QAccessible::SoundPlayed | 0x0001 | Ein Objekt hat einen Ton abgespielt. |
QAccessible::TableCaptionChanged | 0x0113 | Eine Tabellenbeschriftung wurde geändert. |
QAccessible::TableColumnDescriptionChanged | 0x0114 | Die Beschreibung einer Tabellenspalte, die sich in der Regel in der Spaltenüberschrift befindet, wurde geändert. |
QAccessible::TableColumnHeaderChanged | 0x0115 | Eine Tabellen-Spaltenüberschrift wurde geändert. |
QAccessible::TableRowDescriptionChanged | 0x0117 | Die Beschreibung einer Tabellenzeile, die sich normalerweise in der Zeilenüberschrift befindet, wurde geändert. |
QAccessible::TableRowHeaderChanged | 0x0118 | Eine Tabellenzeilenüberschrift wurde geändert. |
QAccessible::TableSummaryChanged | 0x0119 | Die Zusammenfassung einer Tabelle wurde geändert. |
QAccessible::TextColumnChanged | 0x011D | Eine Textspalte wurde geändert. |
QAccessible::VisibleDataChanged | 0x0122 |
Die Werte für diese Aufzählung sind so definiert, dass sie mit denen in den Spezifikationen „IAccessible2“ und „MSAA“ übereinstimmen.
QAccessible::Id
Synonym für „unsigned“, wird vom Cache der „ QAccessibleInterface “ verwendet.
QAccessible::InterfaceFactory
Dies ist ein `typedef` für einen Zeiger auf eine Funktion mit folgender Signatur:
typedef QAccessibleInterface *myFactoryFunction(const QString &key, QObject *);Die Funktion erhält einen Zeiger auf „ QString “ und einen Zeiger auf „ QObject “, wobei „ QString “ der Schlüssel ist, der die Schnittstelle identifiziert. „ QObject “ wird an „ QAccessibleInterface “ übergeben, damit diese eine Referenz darauf halten kann.
Wenn der Schlüssel und der „ QObject “ keinen entsprechenden „ QAccessibleInterface “ haben, wird „ nullptr “ zurückgegeben.
Installierte Fabriken werden von `queryAccessibilityInterface()` aufgerufen, bis eine eine Schnittstelle bereitstellt.
enum QAccessible::InterfaceType
QAccessibleInterface unterstützt mehrere Unter-Schnittstellen. Um weitere Informationen zu bestimmten Objekten bereitzustellen, sollte deren zugängliche Darstellung eine oder mehrere dieser Schnittstellen implementieren.
Hinweis: Bei der Erstellung einer Unterklasse einer dieser Schnittstellen muss die Methode ` QAccessibleInterface::interface_cast()` implementiert werden.
| Konstante | Wert | Beschreibung |
|---|---|---|
QAccessible::TextInterface | 0 | Für Text, der eine Auswahl ermöglicht oder mehr als eine Zeile umfasst. Einfache Beschriftungen müssen diese Schnittstelle nicht implementieren. |
QAccessible::ValueInterface | 2 | Für Objekte, die zur Bearbeitung eines Werts dienen, z. B. Schieberegler oder Bildlaufleisten. |
QAccessible::ActionInterface | 3 | Für interaktive Objekte, die es dem Benutzer ermöglichen, eine Aktion auszulösen. Im Grunde alles, was beispielsweise eine Mausinteraktion zulässt. |
QAccessible::TableInterface | 5 | Für Listen, Tabellen und Baumstrukturen. |
QAccessible::TableCellInterface | 6 | Für Zellen in einem „TableInterface“-Objekt. |
QAccessible::HyperlinkInterface | 7 | Für Hyperlink-Knoten (in der Regel als untergeordnete Elemente von Textknoten eingebettet) |
QAccessible::SelectionInterface (since Qt 6.5) | 8 | Für Nicht-Text-Objekte, die die Auswahl von untergeordneten Objekten unterstützen. |
QAccessible::AttributesInterface (since Qt 6.8) | 9 | Für Objekte, die objektspezifische Attribute unterstützen. |
QAccessible::ViewportInterface (since Qt 6.12) | 10 | Für Objekte, die zweidimensionales oder indiziertes Scrollen ermöglichen. |
Siehe auch „ QAccessibleInterface::interface_cast()“, „ QAccessibleTextInterface “, „ QAccessibleValueInterface “, „ QAccessibleActionInterface “, „ QAccessibleTableInterface “, „ QAccessibleTableCellInterface “, „ QAccessibleSelectionInterface “, „ QAccessibleAttributesInterface “ und „ QAccessibleViewportInterface “.
enum QAccessible::RelationFlag
flags QAccessible::Relation
Dieser Enum-Typ definiert Bit-Flags, die kombiniert werden können, um die Beziehung zwischen zwei zugänglichen Objekten anzugeben. Er wird von der Funktion `relations()` verwendet, die eine Liste aller zugehörigen Schnittstellen des aufrufenden Objekts zusammen mit den Beziehungen für jedes Objekt zurückgibt.
Jeder Eintrag in der Liste ist ein std::pair, wobei das Element „ second “ den oder die Beziehungstypen zwischen dem durch das Element „ first “ dargestellten Objekt „ returned “ und der Schnittstelle bzw. dem Objekt „ origin “ (dem Aufrufer) speichert.
In der folgenden Tabelle bezieht sich das Objekt „ returned “ auf das Objekt in der zurückgegebenen Liste, und das Objekt „ origin “ ist dasjenige, das durch die aufrufende Schnittstelle repräsentiert wird.
| Konstante | Wert | Beschreibung |
|---|---|---|
QAccessible::Label | 0x00000001 | Das Objekt „ returned “ ist die Bezeichnung für das Objekt „ origin “. |
QAccessible::Labelled | 0x00000002 | Das Objekt „ returned “ wird durch das Objekt „ origin “ benannt. |
QAccessible::Controller | 0x00000004 | Das Objekt „ returned “ steuert das Objekt „ origin “. |
QAccessible::Controlled | 0x00000008 | Das Objekt „ returned “ wird vom Objekt „ origin “ gesteuert. |
QAccessible::DescriptionFor (since Qt 6.6) | 0x00000010 | Das Objekt „ returned “ liefert eine Beschreibung für das Objekt „ origin “. |
QAccessible::Described (since Qt 6.6) | 0x00000020 | Das Objekt „ returned “ wird durch das Objekt „ origin “ beschrieben. |
QAccessible::FlowsFrom (since Qt 6.6) | 0x00000040 | Der Inhalt fließt logisch vom Objekt „ returned “ zum Objekt „ origin “. |
QAccessible::FlowsTo (since Qt 6.6) | 0x00000080 | Der Inhalt fließt logisch vom Objekt „ origin “ zum Objekt „ returned “. |
QAccessible::AllRelations | 0xffffffff | Wird als Maske verwendet, um anzugeben, dass wir an Informationen über alle Beziehungen interessiert sind |
Implementierungen von relations() geben eine Kombination dieser Flags zurück. Einige Werte schließen sich gegenseitig aus.
Der Typ „Relation“ ist ein `typedef` für ` QFlags<RelationFlag>`. Er speichert eine ODER-Kombination von `RelationFlag`-Werten.
enum QAccessible::Role
Diese Enumeration definiert die Rolle eines barrierefreien Objekts. Die Rollen lauten:
| Konstante | Wert | Beschreibung |
|---|---|---|
QAccessible::AlertMessage | 0x00000008 | Ein Objekt, das dazu dient, den Benutzer zu benachrichtigen. |
QAccessible::Animation | 0x00000036 | Ein Objekt, das eine Animation anzeigt. |
QAccessible::Application | 0x0000000E | Ein Objekt, das die Anwendung repräsentiert |
QAccessible::Assistant | 0x00000020 | Ein Objekt, das interaktive Hilfe bereitstellt. |
QAccessible::BlockQuote (since Qt 6.9) | 0x431 | Ein Inhaltsabschnitt, der aus einer anderen Quelle zitiert wird. |
QAccessible::Border | 0x00000013 | Ein Objekt, das einen Rahmen darstellt. |
QAccessible::ButtonDropDown | 0x00000038 | Eine Schaltfläche, die eine Liste von Elementen öffnet. |
QAccessible::ButtonDropGrid | 0x0000003A | Eine Schaltfläche, die ein Raster anzeigt. |
QAccessible::ButtonMenu | 0x00000039 | Eine Schaltfläche, die ein Menü öffnet. |
QAccessible::Canvas | 0x00000035 | Ein Objekt, das Grafiken anzeigt, mit denen der Benutzer interagieren kann. |
QAccessible::Caret | 0x00000007 | Ein Objekt, das den System-Caret (Textcursor) darstellt. |
QAccessible::Cell | 0x0000001D | Eine Zelle in einer Tabelle. |
QAccessible::Chart | 0x00000011 | Ein Objekt, das eine grafische Darstellung von Daten anzeigt. |
QAccessible::CheckBox | 0x0000002C | Ein Objekt, das eine Option darstellt, die aktiviert oder deaktiviert werden kann. Einige Optionen bieten einen „gemischten“ Zustand, z. B. weder aktiviert noch deaktiviert. |
QAccessible::Client | 0x0000000A | Der Client-Bereich in einem Fenster. |
QAccessible::Clock | 0x0000003D | Eine Uhr, die die Uhrzeit anzeigt. |
QAccessible::ColorChooser | 0x404 | Ein Dialogfeld, in dem der Benutzer eine Farbe auswählen kann. |
QAccessible::Column | 0x0000001B | Eine Spalte aus Zellen, meist innerhalb einer Tabelle. |
QAccessible::ColumnHeader | 0x00000019 | Eine Überschrift für eine Datenspalte. |
QAccessible::ComboBox | 0x0000002E | Eine Liste mit Auswahlmöglichkeiten, aus denen der Benutzer wählen kann. |
QAccessible::ComplementaryContent | 0x42C | Ein Teil des Dokuments oder der Webseite, der den Hauptinhalt ergänzt, in der Regel ein Orientierungspunkt (siehe WAI-ARIA). |
QAccessible::Cursor | 0x00000006 | Ein Objekt, das den Mauszeiger darstellt. |
QAccessible::Desktop | 0x00000082 | Das Objekt stellt den Desktop oder Arbeitsbereich dar. |
QAccessible::Dial | 0x00000031 | Ein Objekt, das einen Drehregler oder Knopf darstellt. |
QAccessible::Dialog | 0x00000012 | Ein Dialogfeld. |
QAccessible::Document | 0x0000000F | Ein Dokument, beispielsweise in einer Office-Anwendung. |
QAccessible::EditableText | 0x0000002A | Bearbeitbarer Text, z. B. ein Textfeld oder eine Textbearbeitung. |
QAccessible::Equation | 0x00000037 | Ein Objekt, das eine mathematische Gleichung darstellt. |
QAccessible::Footer | 0x40E | Eine Fußzeile auf einer Seite (in der Regel in Dokumenten). |
QAccessible::Form | 0x410 | Ein Webformular mit Steuerelementen. |
QAccessible::Graphic | 0x00000028 | Eine Grafik oder ein Bild, z. B. ein Symbol. |
QAccessible::Grip | 0x00000004 | Ein Griff, den der Benutzer ziehen kann, um die Größe von Widgets zu ändern. |
QAccessible::Grouping | 0x00000014 | Ein Objekt, das eine logische Gruppierung anderer Objekte darstellt. |
QAccessible::Heading | 0x414 | Eine Überschrift in einem Dokument. |
QAccessible::HelpBalloon | 0x0000001F | Ein Objekt, das Hilfe in einem separaten, kurzzeitig angezeigten Fenster anzeigt. |
QAccessible::HotkeyField | 0x00000032 | Ein Hotkey-Feld, in das der Benutzer eine Tastenkombination eingeben kann. |
QAccessible::Indicator | 0x00000027 | Ein Indikator, der einen aktuellen Wert oder ein aktuelles Element darstellt. |
QAccessible::LayeredPane | 0x00000080 | Ein Objekt, das untergeordnete Elemente in Ebenen enthalten kann, z. B. in einem Stapel. |
QAccessible::Link | 0x0000001E | Ein Link zu etwas anderem. |
QAccessible::List | 0x00000021 | Eine Liste von Elementen, aus der der Benutzer ein oder mehrere Elemente auswählen kann. |
QAccessible::ListItem | 0x00000022 | Ein Element in einer Liste von Elementen. |
QAccessible::MenuBar | 0x00000002 | Eine Menüleiste, über die der Benutzer Menüs öffnen kann. |
QAccessible::MenuItem | 0x0000000C | Ein Element in einem Menü oder einer Menüleiste. |
QAccessible::NoRole | 0x00000000 | Das Objekt hat keine Rolle. Dies deutet in der Regel auf ein ungültiges Objekt hin. |
QAccessible::Note | 0x41B | Ein Abschnitt, dessen Inhalt eine Ergänzung oder einen Nebenaspekt zum Hauptinhalt der Ressource darstellt. |
QAccessible::Notification | 0x00000086 | Ein Objekt, das eine Benachrichtigung darstellt (z. B. in der Taskleiste). Diese Rolle hat nur unter Linux Auswirkungen. |
QAccessible::PageTab | 0x00000025 | Eine Seitenregisterkarte, die der Benutzer auswählen kann, um in einem Dialogfenster zu einer anderen Seite zu wechseln. |
QAccessible::PageTabList | 0x0000003C | Eine Liste von Seitenregisterkarten. |
QAccessible::Paragraph | 0x00000083 | Ein Textabsatz (kommt in der Regel in Dokumenten vor). |
QAccessible::Pane | 0x00000010 | Ein generischer Container. |
QAccessible::PopupMenu | 0x0000000B | Ein Menü, das Optionen auflistet, die der Benutzer auswählen kann, um eine Aktion auszuführen. |
QAccessible::ProgressBar | 0x00000030 | Das Objekt zeigt den Fortschritt eines laufenden Vorgangs an. |
QAccessible::PropertyPage | 0x00000026 | Eine Eigenschaftenseite, auf der der Benutzer Optionen und Einstellungen ändern kann. |
QAccessible::Button | 0x0000002B | Eine Schaltfläche. |
QAccessible::RadioButton | 0x0000002D | Ein Objekt, das eine Option darstellt, die sich mit anderen Optionen ausschließt. |
QAccessible::Row | 0x0000001C | Eine Zeile aus Zellen, meist innerhalb einer Tabelle. |
QAccessible::RowHeader | 0x0000001A | Eine Kopfzeile für eine Datenzeile. |
QAccessible::ScrollBar | 0x00000003 | Eine Bildlaufleiste, mit der der Benutzer den sichtbaren Bereich scrollen kann. |
QAccessible::Section | 0x00000085 | Ein Abschnitt (in einem Dokument). |
QAccessible::Separator | 0x00000015 | Ein Trennzeichen, das den Raum in logische Bereiche unterteilt. |
QAccessible::Slider | 0x00000033 | Ein Schieberegler, mit dem der Benutzer einen Wert innerhalb eines vorgegebenen Bereichs auswählen kann. |
QAccessible::Sound | 0x00000005 | Ein Objekt, das einen Ton darstellt. |
QAccessible::SpinBox | 0x00000034 | Ein Spin-Box-Widget, mit dem der Benutzer einen Wert innerhalb eines vorgegebenen Bereichs eingeben kann. |
QAccessible::Splitter | 0x0000003E | Ein Splitter, der den verfügbaren Platz auf seine untergeordneten Widgets aufteilt. |
QAccessible::StaticText | 0x00000029 | Statischer Text, z. B. Beschriftungen für andere Widgets. |
QAccessible::StatusBar | 0x00000017 | Eine Statusleiste. |
QAccessible::Switch (since Qt 6.11) | 0x00000087 | Ein Schalter, der ein- oder ausgeschaltet werden kann. |
QAccessible::Table | 0x00000018 | Eine Tabelle, die Daten in einem Raster aus Zeilen und Spalten darstellt. |
QAccessible::Terminal | 0x00000081 | Ein Terminal oder eine Befehlszeilenschnittstelle. |
QAccessible::TitleBar | 0x00000001 | Die Beschriftung der Titelleiste eines Fensters. |
QAccessible::ToolBar | 0x00000016 | Eine Symbolleiste, in der Widgets gruppiert sind, auf die der Benutzer häufig zugreift. |
QAccessible::ToolTip | 0x0000000D | Ein Tooltip, der Informationen zu anderen Objekten liefert. |
QAccessible::Tree | 0x00000023 | Eine Liste von Elementen in einer Baumstruktur. |
QAccessible::TreeItem | 0x00000024 | Ein Eintrag in einer Baumstruktur. |
QAccessible::UserRole | 0x0000ffff | Der erste Wert, der für benutzerdefinierte Rollen verwendet wird. |
QAccessible::WebDocument | 0x00000084 | HTML-Dokument, meist in einem Browser. |
QAccessible::Whitespace | 0x0000003B | Leerraum zwischen anderen Objekten. |
QAccessible::Window | 0x00000009 | Ein Fenster der obersten Ebene. |
enum QAccessible::Text
Diese Enumeration legt Zeichenfolgeninformationen fest, die ein barrierefreies Objekt zurückgibt.
| Konstante | Wert | Beschreibung |
|---|---|---|
QAccessible::Name | 0 | Der Name des Objekts. Dieser kann von barrierefreien Clients sowohl als Bezeichner als auch als Kurzbeschreibung verwendet werden. |
QAccessible::Description | 1 | Ein kurzer Text, der das Objekt beschreibt. |
QAccessible::Value | 2 | Der Wert des Objekts. |
QAccessible::Help | 3 | Ein längerer Text mit Informationen zur Verwendung des Objekts. |
QAccessible::Accelerator | 4 | Die Tastenkombination, die die Standardaktion des Objekts ausführt. |
QAccessible::UserText | 0x0000ffff | Der erste Wert, der für benutzerdefinierten Text verwendet werden soll. |
QAccessible::Identifier (since Qt 6.8) | 6 | Eine Kennung für das Objekt, z. B. für UI-Tests. |
enum QAccessible::TextBoundaryType
Diese Enumeration beschreibt verschiedene Arten von Textgrenzen. Sie entspricht der IAccessible2-API und wird im „ QAccessibleTextInterface “ verwendet.
| Konstante | Wert | Beschreibung |
|---|---|---|
QAccessible::CharBoundary | 0 | Verwendet einzelne Zeichen als Begrenzung. |
QAccessible::WordBoundary | 1 | Wörter als Begrenzungen verwenden. |
QAccessible::SentenceBoundary | 2 | Sätze als Trennzeichen verwenden. |
QAccessible::ParagraphBoundary | 3 | Absätze als Trennzeichen verwenden. |
QAccessible::LineBoundary | 4 | Zeilenumbrüche als Begrenzung verwenden. |
QAccessible::NoBoundary | 5 | Keine Begrenzung (den gesamten Text verwenden). |
Siehe auch QAccessibleTextInterface.
Dokumentation der Member-Funktionen
[static] QAccessibleInterface *QAccessible::accessibleInterface(QAccessible::Id id)
Gibt die „ QAccessibleInterface “ zurück, die zu „ id “ gehört.
Gibt „ nullptr “ zurück, wenn die ID ungültig ist.
[static] void QAccessible::deleteAccessibleInterface(QAccessible::Id id)
Entfernt die zu dieser „ id “ gehörende Schnittstelle aus dem Cache und löscht sie. Die ID wird ungültig und kann vom Cache wiederverwendet werden.
[static] void QAccessible::installFactory(QAccessible::InterfaceFactory factory)
Installiert die „ InterfaceFactory “ factory. Die zuletzt hinzugefügte Factory wird von queryAccessibleInterface() als erste verwendet.
[static] bool QAccessible::isActive()
Gibt „ true “ zurück, wenn die Plattform Informationen zur Barrierefreiheit angefordert hat.
Diese Funktion gibt „false“ zurück, bis ein Tool wie beispielsweise ein Screenreader auf das Barrierefreiheits-Framework zugegriffen hat. Es ist weiterhin möglich, „ QAccessible::queryAccessibleInterface()“ zu verwenden, auch wenn die Barrierefreiheit nicht aktiv ist. Es werden jedoch keine Benachrichtigungen an die Plattform gesendet.
Es wird empfohlen, diese Funktion zu verwenden, um aufwendige Benachrichtigungen über ` updateAccessibility()` zu vermeiden, wenn diese nicht benötigt werden.
[static] QAccessibleInterface *QAccessible::queryAccessibleInterface(QObject *object)
Wenn für die angegebene Klasse ` object` eine ` QAccessibleInterface `-Implementierung vorhanden ist, gibt diese Funktion einen Zeiger auf die Implementierung zurück; andernfalls gibt sie ` nullptr` zurück.
Die Funktion ruft alle installierten Factory-Funktionen auf (von der zuletzt installierten bis zur am längsten zurückliegenden), bis eine gefunden wird, die eine Schnittstelle für die Klasse „ object “ bereitstellt. Wenn keine Factory eine Barrierefreiheits-Implementierung für die Klasse bereitstellen kann, lädt die Funktion installierte Barrierefreiheits-Plugins und prüft, ob eines der Plugins die Implementierung bereitstellen kann.
Ist keine Implementierung für die Klasse des Objekts verfügbar, versucht die Funktion, mithilfe der oben beschriebenen Strategie eine Implementierung für die übergeordnete Klasse des Objekts zu finden.
Alle Schnittstellen werden von einem internen Cache verwaltet und sollten nicht gelöscht werden.
[static] QAccessible::Id QAccessible::registerAccessibleInterface(QAccessibleInterface *iface)
Rufen Sie diese Funktion auf, um sicherzustellen, dass manuell erstellte Schnittstellen ordnungsgemäß verwaltet werden.
Darf pro Schnittstelle „ iface “ genau einmal aufgerufen werden. Dies wird implizit beim Aufruf von „ queryAccessibleInterface “ erfolgt; der Aufruf dieser Funktion ist nur erforderlich, wenn „QAccessibleInterfaces“ mit dem Operator „new“ instanziiert werden. Dies wird nicht empfohlen; verwenden Sie nach Möglichkeit die Standardfunktionen und überlassen Sie dies der Funktion „ queryAccessibleInterface()“.
Wenn es notwendig ist, die Funktion ` QAccessibleInterface::child()` neu zu implementieren und das untergeordnete Element nach dessen Erstellung zurückzugeben, muss diese Funktion aufgerufen werden.
[static] void QAccessible::removeFactory(QAccessible::InterfaceFactory factory)
Entfernt „ factory “ aus der Liste der installierten InterfaceFactories.
[static] void QAccessible::setRootObject(QObject *object)
Legt das Stammobjekt der zugänglichen Objekte dieser Anwendung auf „ object “ fest. Alle anderen zugänglichen Objekte sind über die Objektnavigation vom Stammobjekt aus erreichbar.
Normalerweise ist es nicht erforderlich, diese Funktion aufzurufen, da Qt das Objekt „ QApplication “ unmittelbar vor dem Eintritt in die Ereignisschleife in ` QApplication::exec()` als Stammobjekt festlegt.
Verwenden Sie `QAccessible::installRootObjectHandler()`, um den Funktionsaufruf an eine benutzerdefinierte Handler-Funktion umzuleiten.
Siehe auch ` queryAccessibleInterface()`.
[static] QAccessible::Id QAccessible::uniqueId(QAccessibleInterface *iface)
Gibt die eindeutige ID für den „ QAccessibleInterface “ unter iface zurück.
[static] void QAccessible::updateAccessibility(QAccessibleEvent *event)
Informiert über eine Änderung, die für Barrierefreiheits-Clients relevant sein könnte.
event Liefert Details zur Änderung. Dazu gehören die Quelle der Änderung und die Art der Änderung. Der „ event “ sollte genügend Informationen enthalten, um aussagekräftige Benachrichtigungen zu ermöglichen.
Beispielsweise gibt der Typ „ ValueChange “ an, dass die Position eines Schiebereglers geändert wurde.
Rufen Sie diese Funktion immer dann auf, wenn sich der Zustand Ihres barrierefreien Objekts oder eines seiner Unterelemente entweder programmgesteuert (z. B. durch Aufruf von ` QLabel::setText()`) oder durch Benutzerinteraktion geändert hat.
Wenn keine Barrierefreiheits-Tools auf dieses Ereignis warten, ist der Leistungsverlust durch den Aufruf dieser Funktion gering; sollte die Ermittlung der Aufrufparameter jedoch aufwendig sein, können Sie ` QAccessible::isActive()` prüfen, um unnötige Berechnungen zu vermeiden.
© 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.