Zugänglichkeit für Qt Quick Anwendungen

Einführung

Auf dieser Seite wird erklärt, wie man Metadaten zur Barrierefreiheit in Qt Quick Anwendungen einfügt. Qt Quick Anwendungen und viele ihrer QML-Typen haben bereits eingebaute Barrierefreiheitsfunktionen. Die Schaltflächen-Steuerelemente verfügen beispielsweise über eine Tastaturzugänglichkeit, die es ermöglicht, mit der Tabulatortaste zwischen den Steuerelementen zu wechseln und sie mit der Return- oder Enter-Taste zu aktivieren. Durch die Verwendung vorhandener Steuerelemente haben Sie also bereits einen guten Start, um Ihre Anwendung Qt Quick barrierefrei zu gestalten. In einigen Fällen kann es jedoch erforderlich sein, die Aufgabe eines QML-Elements zu klären.

Ähnlich wie bei der barrierefreien Gestaltung von Webanwendungen weisen Sie den Oberflächenelementen, in diesem Fall den QML-Elementen, Eigenschaften zu. Diese Eigenschaften geben Metadaten an Barrierefreiheits-Tools weiter, die zusammen mit sorgfältig ausgewählten, kontrastreichen Farbthemen und anderen visuellen Hinweisen dem Benutzer bei der Interaktion mit Ihrer Anwendung Qt Quick helfen.

Im Allgemeinen sind Zugänglichkeitswerkzeuge an drei verschiedenen Kategorien von Metadaten interessiert:

  • Eigenschaften: Der Zugänglichkeits-Client liest Metadaten über zugängliche Objekte. In einigen Fällen kann der Eingabehilfen-Client diese Eigenschaften auch ändern, z. B. den Text in einer Zeilenbearbeitung.
  • Aktionen: Der Zugänglichkeits-Client ruft Aktionen auf, z. B. das Drücken einer Schaltfläche.
  • Beziehungen und Navigation: Der Accessibility-Client wechselt von einem zugänglichen Objekt zu einem anderen, wobei er die Beziehungen zwischen den Objekten nutzt.

Für Qt Quick -Anwendungen ist der wichtigste Typ der Accessible QML-Typ, der QML-Elementen Zugänglichkeits-Metadaten hinzufügt.

Hinzufügen von Eingabehilfen-Metadaten zu QML-Elementen

Um QML-Elementen Zugänglichkeits-Metadaten hinzuzufügen, entweder zu vorhandenen, von Qt bereitgestellten Typen oder zu benutzerdefinierten, in C++ definierten Typen, verwenden Sie den Accessible QML-Typ. Die wichtigsten Eigenschaften des Accessible QML-Typs sind name, description und role.

Hier ein Beispiel für das Hinzufügen von Metadaten zur Barrierefreiheit zu einem Typ Text, der in diesem Fall eine mathematische Gleichung darstellt:

Text {
    id: myMathEquation
    text: "y = 8x - 9"
    font.family: "Helvetica"

    Accessibility.role: Accessible.Equation
    Accessibility.name: myMathEquation.text
    Accessibility.description: qsTr("Linear equation")
    Accessible.onPressAction: {
        // Highlight the x variable
        ...
    }
}

role wird auf Equation gesetzt, um anzugeben, was der Typ Text darstellt. name ist die wichtigste Eigenschaft, die an den Text der Schaltfläche gebunden ist. Um zusätzliche Informationen über ein QML-Element bereitzustellen, verwenden Sie die Eigenschaft description. Der Signalhandler Accessible.pressAction, der von Zugänglichkeitswerkzeugen aufgerufen werden kann, um die Schaltfläche auszulösen, muss die gleiche Wirkung haben wie das Tippen oder Klicken auf den Text.

Während Textinhalte von Natur aus zugänglich sind, ist dies bei Multimedia-Inhalten nicht der Fall. Daher ist es wichtig, Multimedia-Inhalte wie Bilder, Videos und Audio mit den notwendigen Metadaten für die Barrierefreiheit zu versehen. Hier ein Beispiel für die Bereitstellung von Zugänglichkeits-Metadaten für ein Bild, das ein Tortendiagramm darstellt:

Image {
    source: "pie-chart-683.png"
    Accessibility.role: Accessible.Chart
    Accessibility.name: qsTr("Pie chart")
    Accessibility.description: qsTr("Pie chart that shows the distribution
    of sales from three store locations: Durban representing 60 percent,
    Johannesburg 20 percent, and Cape Town 20 percent")
    Accessible.onPressAction: {
        // Expand the image
        ...
    }
}

Weitere Informationen finden Sie unter Accessible für die Liste der Eigenschaften, die Sie zu QML-Elementen hinzufügen können.

© 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.