QAccessible Class
Die Klasse QAccessible bietet Enums und statische Funktionen im Zusammenhang mit der Barrierefreiheit. Mehr...
Kopfzeile: | #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 von Accessibility Classes.
Öffentliche Typen
struct | State |
(since 6.8) enum class | AnnouncementPoliteness { Polite, Assertive } |
(since 6.8) enum class | Attribute { Custom, Level } |
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, Border, …, 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) |
Detaillierte Beschreibung
Diese Klasse ist Teil der Barrierefreiheit für QWidget-Anwendungen.
Barrierefreie Anwendungen können von Menschen genutzt werden, die nicht in der Lage sind, Anwendungen mit herkömmlichen Mitteln zu nutzen.
Die Funktionen in dieser Klasse dienen der Kommunikation zwischen barrierefreien Anwendungen (auch AT-Server genannt) und barrierefreien Werkzeugen (AT-Clients), wie z.B. Screenreadern 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 des Servers an. Die Klasse QAccessibleInterface ist die Kernschnittstelle und kapselt diese Informationen in einer rein virtuellen API. Implementierungen der Schnittstelle werden von Qt über die queryAccessibleInterface() API bereitgestellt.
Die Kommunikation zwischen Servern und Clients wird durch die Funktion setRootObject() initialisiert. Funktionszeiger können installiert 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 mit QAccessibleBridge unterstützt werden.
In der Unix/X11-AT-SPI-Implementierung werden Anwendungen zugänglich, wenn zwei Bedingungen erfüllt sind:
- org.a11y.Status.IsEnabled DBus-Eigenschaft ist true
- org.a11y.Status.ScreenReaderEnabled DBus-Eigenschaft ist wahr
Eine Alternative zum Setzen der DBus AT-SPI Eigenschaften ist das Setzen der Umgebungsvariablen QT_LINUX_ACCESSIBILITY_ALWAYS_ON.
Zusätzlich zu den statischen Funktionen von QAccessible bietet Qt eine generische Schnittstelle, QAccessibleInterface, die verwendet werden kann, um alle Widgets und Objekte zu verpacken (z.B. QPushButton). Diese einzige Schnittstelle stellt alle Metadaten bereit, die für die unterstützenden Technologien erforderlich sind. Qt bietet Implementierungen dieser Schnittstelle für seine eingebauten Widgets als Plugins an.
Wenn Sie benutzerdefinierte Widgets entwickeln, können Sie benutzerdefinierte Unterklassen von QAccessibleInterface erstellen und sie als Plugins (mit QAccessiblePlugin) verteilen oder sie in die Anwendung kompilieren. Ebenso kann die vordefinierte Unterstützung für Barrierefreiheit in Qt als Plugin (die Standardeinstellung) oder direkt in die Qt-Bibliothek integriert werden. Der Hauptvorteil der Verwendung von Plugins besteht darin, dass die Klassen für Barrierefreiheit nur dann in den Speicher geladen werden, wenn sie tatsächlich verwendet werden; sie verlangsamen nicht den üblichen Fall, in dem keine Hilfstechnologie verwendet wird.
Qt enthält auch zwei Komfortklassen, QAccessibleObject und QAccessibleWidget, die von QAccessibleInterface erben und den kleinsten gemeinsamen Nenner von Metadaten bereitstellen (z.B. Widgetgeometrie, Fenstertitel, einfacher Hilfetext). Sie können sie als Basisklassen verwenden, wenn Sie Ihre benutzerdefinierten QObject oder QWidget Unterklassen wrappen.
Siehe auch QAccessibleInterface.
Dokumentation der Mitgliedstypen
[since 6.8]
enum class QAccessible::AnnouncementPoliteness
Diese Aufzählung beschreibt die Priorität für Ansagen, die von QAccessibleAnnouncementEvent verwendet werden.
Mit QAccessible::AnouncementPoliteness::Polite sollten assistive Technologien die Nachricht bei der nächsten günstigen Gelegenheit ankündigen, z. B. am Ende des aktuellen Satzes oder wenn der Benutzer eine Pause beim Tippen macht.
Bei der Angabe von QAccessible::AnouncementPoliteness::Assertive sollten assistive Technologien den Benutzer sofort benachrichtigen.
Da eine Unterbrechung den Benutzer verwirren oder dazu führen könnte, dass er seine aktuelle Aufgabe nicht zu Ende führt, sollte QAccessible::AnouncementPoliteness::Assertive nur verwendet werden, wenn die Unterbrechung zwingend notwendig ist.
Konstante | Wert | Beschreibung |
---|---|---|
QAccessible::AnnouncementPoliteness::Polite | 0 | Die Durchsage hat normale Priorität. |
QAccessible::AnnouncementPoliteness::Assertive | 1 | Die Ansage hat eine hohe Priorität und sollte den Benutzer sofort benachrichtigen, auch wenn dies bedeutet, dass die aktuelle Aufgabe des Benutzers unterbrochen wird. |
Dieses Enum wurde in Qt 6.8 eingeführt.
Siehe auch QAccessibleAnnouncementEvent.
[since 6.8]
enum class QAccessible::Attribute
Diese Aufzählung beschreibt verschiedene Arten von Attributen, die von QAccessibleAttributesInterface verwendet werden.
Diese Attribute sind vergleichbar mit dem Konzept der Eigenschaften/(Objekt-)Attribute in ARIA, AT-SPI2, IAccessible, UIA und NSAccessibility und werden gegebenenfalls auf ihr Plattform-Gegenstück abgebildet.
Jedes Attribut wird als Schlüssel-Werte-Paar behandelt, wobei die Werte dieser Aufzählung als Schlüssel verwendet werden.
Attributwerte werden in einer QVariant dargestellt. Der Typ des in der QVariant gespeicherten Wertes ist festgelegt und wird nachstehend für jeden der Attributtypen angegeben.
Konstante | Wert | Beschreibung |
---|---|---|
QAccessible::Attribute::Custom | 0 | Werttyp: QHash<QString QString > Das Attribut Custom ist insofern besonders, als es effektiv mehrere Attribute auf einmal darstellen kann, da es selbst ein QHash ist, das zur Darstellung von Schlüssel-Wert-Paaren verwendet wird. Für Plattformen, die benutzerdefinierte Schlüssel-Wert-Paare für Attribute unterstützen, werden die im Custom -Attribut eingestellten Attribute mit der Plattformschicht verbunden, ohne dass eine Übersetzung in plattformspezifische Attribute vorgenommen wird. Im Allgemeinen sollten die anderen, stärker typisierten Attribute verwendet werden. Dieses Attribut kann z. B. für Prototypen verwendet werden, bevor ein offizieller neuer Aufzählungswert für ein bestimmtes Merkmal hinzugefügt wird. |
QAccessible::Attribute::Level | 1 | Werttyp: int Definiert die hierarchische Ebene eines Elements innerhalb einer Struktur, z. B. die Überschriftsebene einer Überschrift. Dieses Attribut entspricht konzeptionell der Eigenschaft "aria-level" in ARIA. |
Dieses Enum 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 | Der Tastaturbeschleuniger 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 Nachricht von 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 eingeleitet. |
QAccessible::DefaultActionChanged | 0x80B0 | Die Standard QAccessible::Action für das zugängliche Objekt hat sich geändert. |
QAccessible::DescriptionChanged | 0x800D | Die QAccessible::Description des Objekts wurde geändert. |
QAccessible::DialogEnd | 0x0011 | Ein Dialog (QDialog) wurde ausgeblendet. |
QAccessible::DialogStart | 0x0010 | Ein Dialog (QDialog) wurde sichtbar geschaltet. |
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 Neuladen des Dokuments wurde eingeleitet. |
QAccessible::DragDropEnd | 0x000F | Ein Drag&Drop-Vorgang wird gerade beendet. |
QAccessible::DragDropStart | 0x000E | Ein Drag&Drop-Vorgang wird gerade eingeleitet. |
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, z. B. weil der Anzeigetext aufgeteilt wurde, um mehr als einen Link bereitzustellen. |
QAccessible::HyperlinkSelectedLinkChanged | 0x010A | Der Link für den ausgewählten Hypertext-Link 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 für einen Hypertext-Link hat sich geändert. |
QAccessible::HypertextLinkActivated | 0x010B | Ein Hypertext-Link wurde aktiviert, z. B. durch Anklicken oder durch Tastendruck. |
QAccessible::HypertextLinkSelected | 0x010C | Ein Hypertext-Link wurde ausgewählt. |
QAccessible::HypertextNLinksChanged | 0x010F | |
QAccessible::IdentifierChanged (since Qt 6.8) | 0x80E0 | Der Bezeichner 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 PopupMenuEnd für alle Menüs). |
QAccessible::MenuStart | 0x0004 | Ein Menü wurde in der Menüleiste geöffnet (Qt verwendet PopupMenuStart für alle Menüs). |
QAccessible::NameChanged | 0x800C | Die QAccessible::Name Eigenschaft eines Objekts hat sich geändert. |
QAccessible::ObjectAttributeChanged | 0x0110 | |
QAccessible::ObjectCreated | 0x8000 | Ein neues Objekt wurde erstellt. |
QAccessible::ObjectDestroyed | 0x8001 | Ein Objekt wurde gelöscht. |
QAccessible::ObjectHide | 0x8003 | Ein Objekt wird versteckt, zum Beispiel mit QWidget::hide(). Alle Kinder, die das ausgeblendete Objekt hat, senden dieses Ereignis nicht. Es wird nicht gesendet, wenn ein Objekt ausgeblendet wird, da es von anderen 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, zum Beispiel mit QWidget::show(). |
QAccessible::PageChanged | 0x0111 | |
QAccessible::ParentChanged | 0x800F | Das übergeordnete Objekt eines Objekts wurde geändert. |
QAccessible::PopupMenuEnd | 0x0007 | Ein Popup-Menü wurde geschlossen. |
QAccessible::PopupMenuStart | 0x0006 | Ein Popup-Menü wurde geöffnet. |
QAccessible::ScrollingEnd | 0x0013 | Eine Bildlaufoperation wurde beendet (die Maus hat den Schieberegler losgelassen). |
QAccessible::ScrollingStart | 0x0012 | Ein Bildlauf wird gerade gestartet; dies kann z. B. durch einen Mausdruck auf den Schieberegler ausgelöst werden. |
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 hat sich in einer Menü- oder Artikelansicht geändert. |
QAccessible::SelectionWithin | 0x8009 | In einer Objektansicht wurden mehrere Änderungen an einer Auswahl vorgenommen. |
QAccessible::SoundPlayed | 0x0001 | Ein Sound wurde von einem Objekt abgespielt. |
QAccessible::TableCaptionChanged | 0x0113 | Eine Tabellenbeschriftung wurde geändert. |
QAccessible::TableColumnDescriptionChanged | 0x0114 | Die Beschreibung einer Tabellenspalte, die normalerweise in der Spaltenüberschrift zu finden ist, wurde geändert. |
QAccessible::TableColumnHeaderChanged | 0x0115 | Die Überschrift einer Tabellenspalte wurde geändert. |
QAccessible::TableRowDescriptionChanged | 0x0117 | Die Beschreibung einer Tabellenzeile, die normalerweise im Zeilenkopf zu finden ist, wurde geändert. |
QAccessible::TableRowHeaderChanged | 0x0118 | Die Überschrift einer Tabellenzeile 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 den in den Spezifikationen IAccessible2 und MSAA definierten Werten übereinstimmen.
QAccessible::Id
Synonym für unsigned, wird vom QAccessibleInterface Cache verwendet.
QAccessible::InterfaceFactory
Dies ist ein Typedef für einen Zeiger auf eine Funktion mit der folgenden Signatur:
typedef QAccessibleInterface *myFactoryFunction(const QString &key, QObject *);
Die Funktion erhält einen QString und einen QObject Zeiger, wobei QString der Schlüssel ist, der die Schnittstelle identifiziert. Der QObject wird verwendet, um an den QAccessibleInterface weiterzugeben, damit dieser einen Verweis auf ihn halten kann.
Wenn der Schlüssel und QObject keinen entsprechenden QAccessibleInterface haben, wird nullptr
zurückgegeben.
Installierte Fabriken werden durch queryAccessibilityInterface() aufgerufen, bis eine eine Schnittstelle bereitstellt.
enum QAccessible::InterfaceType
QAccessibleInterface unterstützt mehrere Unterschnittstellen. Um mehr Informationen über einige Objekte zu erhalten, sollte ihre zugängliche Darstellung eine oder mehrere dieser Schnittstellen implementieren.
Hinweis: Wenn Sie eine dieser Schnittstellen subklassifizieren, muss QAccessibleInterface::interface_cast() implementiert werden.
Konstante | Wert | Beschreibung |
---|---|---|
QAccessible::TextInterface | 0 | Für Text, der Auswahlen unterstützt oder mehr als eine Zeile umfasst. Einfache Beschriftungen brauchen diese Schnittstelle nicht zu implementieren. |
QAccessible::ValueInterface | 2 | Für Objekte, die zur Manipulation eines Wertes verwendet werden, z. B. Schieberegler oder Bildlaufleisten. |
QAccessible::ActionInterface | 3 | Für interaktive Objekte, die es dem Benutzer ermöglichen, eine Aktion auszulösen. Grundsätzlich alles, was z. B. Mausinteraktion ermöglicht. |
QAccessible::TableInterface | 5 | Für Listen, Tabellen und Bäume. |
QAccessible::TableCellInterface | 6 | Für Zellen in einem TableInterface-Objekt. |
QAccessible::HyperlinkInterface | 7 | Für Hyperlink-Knoten (normalerweise eingebettet als Kinder von Textknoten) |
QAccessible::SelectionInterface (since Qt 6.5) | 8 | Für Nicht-Text-Objekte, die die Auswahl von Unterobjekten unterstützen. |
QAccessible::AttributesInterface (since Qt 6.8) | 9 | Für Objekte, die objektspezifische Attribute unterstützen. |
Siehe auch QAccessibleInterface::interface_cast(), QAccessibleTextInterface, QAccessibleValueInterface, QAccessibleActionInterface, QAccessibleTableInterface, QAccessibleTableCellInterface, QAccessibleSelectionInterface, und QAccessibleAttributesInterface.
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 anzuzeigen. Er wird von der Funktion relations() verwendet, die eine Liste aller verwandten Schnittstellen des aufrufenden Objekts zusammen mit den Beziehungen für jedes Objekt zurückgibt.
Jeder Eintrag in der Liste ist ein QPair, wobei das Mitglied second
den/die Beziehungstyp(en) zwischen dem returned
Objekt, das durch das Mitglied first
dargestellt wird, und der origin
(dem aufrufenden) Schnittstelle/Objekt speichert.
In der nachstehenden Tabelle bezieht sich das returned
Objekt auf das Objekt in der zurückgegebenen Liste, und das origin
Objekt ist dasjenige, das durch die aufrufende Schnittstelle dargestellt 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 bezeichnet. |
QAccessible::Controller | 0x00000004 | Das returned Objekt kontrolliert das origin Objekt. |
QAccessible::Controlled | 0x00000008 | Das returned Objekt wird durch das origin Objekt gesteuert. |
QAccessible::DescriptionFor (since Qt 6.6) | 0x00000010 | Das returned Objekt liefert eine Beschreibung für das origin Objekt. |
QAccessible::Described (since Qt 6.6) | 0x00000020 | Das returned Objekt wird durch das origin Objekt 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 logischerweise vom origin Objekt zum returned Objekt. |
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 Aufzählung definiert die Rolle eines zugänglichen Objekts. Die Rollen sind:
Konstante | Wert | Beschreibung |
---|---|---|
QAccessible::AlertMessage | 0x00000008 | Ein Objekt, das zur Benachrichtigung des Benutzers verwendet wird. |
QAccessible::Animation | 0x00000036 | Ein Objekt, das eine Animation anzeigt. |
QAccessible::Application | 0x0000000E | Das Hauptfenster der Anwendung. |
QAccessible::Assistant | 0x00000020 | Ein Objekt, das interaktive Hilfe bietet. |
QAccessible::Border | 0x00000013 | Ein Objekt, das einen Rahmen darstellt. |
QAccessible::ButtonDropDown | 0x00000038 | Eine Schaltfläche, die eine Liste von Elementen einblendet. |
QAccessible::ButtonDropGrid | 0x0000003A | Eine Schaltfläche, die ein Gitter einblendet. |
QAccessible::ButtonMenu | 0x00000039 | Eine Schaltfläche, die ein Menü einblendet. |
QAccessible::Canvas | 0x00000035 | Ein Objekt, das Grafiken anzeigt, mit denen der Benutzer interagieren kann. |
QAccessible::Caret | 0x00000007 | Ein Objekt, das den System-Cursor (Textzeiger) 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 angekreuzt oder nicht angekreuzt werden kann. Einige Optionen bieten einen "gemischten" Status, z. B. weder markiert noch nicht markiert. |
QAccessible::Client | 0x0000000A | Der Client-Bereich in einem Fenster. |
QAccessible::Clock | 0x0000003D | Eine Uhr, die die Zeit anzeigt. |
QAccessible::ColorChooser | 0x404 | Ein Dialogfeld, in dem der Benutzer eine Farbe auswählen kann. |
QAccessible::Column | 0x0000001B | Eine Spalte mit Zellen, normalerweise in einer Tabelle. |
QAccessible::ColumnHeader | 0x00000019 | Eine Kopfzeile für eine Spalte mit Daten. |
QAccessible::ComboBox | 0x0000002E | Eine Liste von Auswahlmöglichkeiten, aus der der Benutzer wählen kann. |
QAccessible::ComplementaryContent | 0x42C | Ein Teil des Dokuments oder der Webseite, der den Hauptinhalt ergänzt, normalerweise eine Landmarke (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 ein Rad oder einen Knopf darstellt. |
QAccessible::Dialog | 0x00000012 | Ein Dialogfeld. |
QAccessible::Document | 0x0000000F | Ein Dokument, zum Beispiel in einer Büroanwendung. |
QAccessible::EditableText | 0x0000002A | Bearbeitbarer Text, z. B. eine Zeile oder eine Textbearbeitung. |
QAccessible::Equation | 0x00000037 | Ein Objekt, das eine mathematische Gleichung darstellt. |
QAccessible::Footer | 0x40E | Eine Fußzeile auf einer Seite (normalerweise 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 von anderen Objekten darstellt. |
QAccessible::Heading | 0x414 | Eine Überschrift in einem Dokument. |
QAccessible::HelpBalloon | 0x0000001F | Ein Objekt, das Hilfe in einem separaten, kurzlebigen Fenster anzeigt. |
QAccessible::HotkeyField | 0x00000032 | Ein Hotkey-Feld, in das der Benutzer eine Tastenfolge eingeben kann. |
QAccessible::Indicator | 0x00000027 | Ein Indikator, der einen aktuellen Wert oder ein Element darstellt. |
QAccessible::LayeredPane | 0x00000080 | Ein Objekt, das untergeordnete 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 weist normalerweise auf ein ungültiges Objekt hin. |
QAccessible::Note | 0x41B | Ein Abschnitt, dessen Inhalt dem Hauptinhalt der Ressource vorangestellt oder untergeordnet ist. |
QAccessible::Notification | 0x00000086 | Ein Objekt, das eine Benachrichtigung darstellt (z. B. im Systemtray). Diese Rolle hat nur unter Linux eine Auswirkung. |
QAccessible::PageTab | 0x00000025 | Ein Seitenreiter, den der Benutzer auswählen kann, um in einem Dialog zu einer anderen Seite zu wechseln. |
QAccessible::PageTabList | 0x0000003C | Eine Liste von Seitenregisterkarten. |
QAccessible::Paragraph | 0x00000083 | Ein Textabschnitt (normalerweise in Dokumenten). |
QAccessible::Pane | 0x00000010 | Ein allgemeiner 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 Eigenschaftsseite, 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 gegenseitig ausschließt. |
QAccessible::Row | 0x0000001C | Eine Reihe von Zellen, normalerweise innerhalb einer Tabelle. |
QAccessible::RowHeader | 0x0000001A | Eine Kopfzeile für eine Datenreihe. |
QAccessible::ScrollBar | 0x00000003 | Eine Bildlaufleiste, die es dem Benutzer ermöglicht, den sichtbaren Bereich zu verschieben. |
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 bestimmten Bereichs auswählen kann. |
QAccessible::Sound | 0x00000005 | Ein Objekt, das einen Ton darstellt. |
QAccessible::SpinBox | 0x00000034 | Ein Spin-Box-Widget, das dem Benutzer die Eingabe eines Wertes innerhalb eines bestimmten Bereichs ermöglicht. |
QAccessible::Splitter | 0x0000003E | Ein Splitter, der den verfügbaren Platz zwischen seinen untergeordneten Widgets aufteilt. |
QAccessible::StaticText | 0x00000029 | Statischer Text, z. B. Beschriftungen für andere Widgets. |
QAccessible::StatusBar | 0x00000017 | Eine Statusleiste. |
QAccessible::Table | 0x00000018 | Eine Tabelle, die Daten in einem Gitter 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, die Widgets gruppiert, auf die der Benutzer häufig zugreift. |
QAccessible::ToolTip | 0x0000000D | Ein Tooltip, der Informationen über andere Objekte liefert. |
QAccessible::Tree | 0x00000023 | Eine Liste von Elementen in einer Baumstruktur. |
QAccessible::TreeItem | 0x00000024 | Ein Element in einer Baumstruktur. |
QAccessible::UserRole | 0x0000ffff | Der erste Wert, der für benutzerdefinierte Rollen verwendet wird. |
QAccessible::WebDocument | 0x00000084 | HTML-Dokument, normalerweise in einem Browser. |
QAccessible::Whitespace | 0x0000003B | Leerraum zwischen anderen Objekten. |
QAccessible::Window | 0x00000009 | Ein Fenster der obersten Ebene. |
enum QAccessible::Text
Diese Aufzählung gibt die String-Informationen an, die ein zugängliches Objekt zurückgibt.
Konstante | Wert | Beschreibung |
---|---|---|
QAccessible::Name | 0 | Der Name des Objekts. Dieser kann sowohl als Bezeichner als auch als Kurzbeschreibung von zugänglichen Clients 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 über die Verwendung des Objekts. |
QAccessible::Accelerator | 4 | Das Tastaturkürzel, das die Standardaktion des Objekts ausführt. |
QAccessible::UserText | 0x0000ffff | Der erste Wert, der für benutzerdefinierten Text verwendet wird. |
QAccessible::Identifier (since Qt 6.8) | 6 | Ein Bezeichner für das Objekt, z. B. für UI-Tests. |
enum QAccessible::TextBoundaryType
Diese Aufzählung beschreibt verschiedene Arten von Textgrenzen. Sie folgt der IAccessible2 API und wird in der QAccessibleTextInterface verwendet.
Konstante | Wert | Beschreibung |
---|---|---|
QAccessible::CharBoundary | 0 | Einzelne Zeichen als Begrenzung verwenden. |
QAccessible::WordBoundary | 1 | Wörter als Begrenzung verwenden. |
QAccessible::SentenceBoundary | 2 | Sätze als Begrenzung verwenden. |
QAccessible::ParagraphBoundary | 3 | Absätze als Begrenzung verwenden. |
QAccessible::LineBoundary | 4 | Zeilenumbrüche als Begrenzung verwenden. |
QAccessible::NoBoundary | 5 | Keine Begrenzung (den gesamten Text verwenden). |
Siehe auch QAccessibleTextInterface.
Dokumentation der Mitgliedsfunktionen
[static]
QAccessibleInterface *QAccessible::accessibleInterface(QAccessible::Id id)
Gibt die QAccessibleInterface zurück, die zur 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 wieder verwendet werden.
[static]
void QAccessible::installFactory(QAccessible::InterfaceFactory factory)
Installiert die InterfaceFactory factory . Die zuletzt hinzugefügte Fabrik ist die erste, die von queryAccessibleInterface() verwendet wird.
[static]
bool QAccessible::isActive()
Gibt true
zurück, wenn die Plattform Zugänglichkeitsinformationen angefordert hat.
Diese Funktion gibt false zurück, bis ein Tool wie ein Screenreader auf das Accessibility Framework zugreift. Es ist möglich, QAccessible::queryAccessibleInterface() auch dann zu verwenden, wenn die Barrierefreiheit nicht aktiv ist. Es werden dann aber keine Benachrichtigungen an die Plattform gesendet.
Es wird empfohlen, diese Funktion zu verwenden, um teure Benachrichtigungen über updateAccessibility() zu vermeiden, wenn sie nicht benötigt werden.
[static]
QAccessibleInterface *QAccessible::queryAccessibleInterface(QObject *object)
Wenn für die angegebene object eine Implementierung von QAccessibleInterface existiert, 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 zuletzt installierten), bis eine gefunden wird, die eine Schnittstelle für die Klasse object bereitstellt. Wenn keine Factory eine Accessibility-Implementierung für die Klasse bereitstellen kann, lädt die Funktion installierte Accessibility-Plugins und testet, ob eines der Plugins die Implementierung bereitstellen kann.
Wenn keine Implementierung für die Klasse des Objekts verfügbar ist, versucht die Funktion, eine Implementierung für die übergeordnete Klasse des Objekts zu finden, indem sie die oben genannte Strategie anwendet.
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äß im Speicher verwaltet werden.
Darf nur genau einmal pro Schnittstelle iface aufgerufen werden. Sie wird implizit beim Aufruf von queryAccessibleInterface aufgerufen. Der Aufruf dieser Funktion ist nur erforderlich, wenn QAccessibleInterfaces mit dem "new"-Operator instanziiert werden. Dies wird nicht empfohlen, wann immer es möglich ist, verwenden Sie die Standardfunktionen und lassen Sie queryAccessibleInterface() diese Aufgabe erledigen.
Wenn es notwendig ist, die Funktion QAccessibleInterface::child() neu zu implementieren und das Kind nach der Konstruktion 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)
Setzt das Stammobjekt der zugänglichen Objekte dieser Anwendung auf object. Alle anderen zugänglichen Objekte sind über die Objektnavigation vom Wurzelobjekt aus erreichbar.
Normalerweise ist es nicht notwendig, diese Funktion aufzurufen, da Qt das QApplication Objekt als Wurzelobjekt unmittelbar vor dem Eintritt in die Ereignisschleife in QApplication::exec() festlegt.
Verwenden Sie QAccessible::installRootObjectHandler(), um den Funktionsaufruf auf eine angepasste Handler-Funktion umzuleiten.
Siehe auch queryAccessibleInterface().
[static]
QAccessible::Id QAccessible::uniqueId(QAccessibleInterface *iface)
Gibt die eindeutige ID für die Website QAccessibleInterface iface zurück.
[static]
void QAccessible::updateAccessibility(QAccessibleEvent *event)
Informiert über eine Änderung, die für Barrierefreiheitskunden relevant sein könnte.
event liefert Details über die Änderung. Dazu gehören die Quelle der Änderung und die Art der Änderung. Die event sollte genügend Informationen enthalten, um aussagekräftige Benachrichtigungen zu geben.
Zum Beispiel zeigt der Typ ValueChange
an, dass die Position eines Schiebereglers geändert wurde.
Rufen Sie diese Funktion immer dann auf, wenn der Zustand Ihres zugänglichen Objekts oder eines seiner Unterelemente entweder programmatisch (z. B. durch den Aufruf von QLabel::setText()) oder durch Benutzerinteraktion geändert wurde.
Wenn es keine Hilfsmittel für die Barrierefreiheit gibt, die dieses Ereignis abhören, ist der Leistungsverlust durch den Aufruf dieser Funktion gering, aber wenn die Bestimmung der Parameter des Aufrufs teuer ist, können Sie QAccessible::isActive() testen, um unnötige Berechnungen zu vermeiden.
© 2025 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.