Accessibility

TomH

Mitglied
Moin zusammen,

mir kam jetzt das Thema Barrierefreiheit auf den Tisch, nachdem ich zugegebener Maßen das Thema jahrelang recht stiefmütterlich behandelt habe. Um mich halbwegs in die API einzuarbeiten habe ich mir eine kleine simple Beispiel-GUI geschrieben. Alles Standard-Swing-Komponenten, keine abgeleiteten oder selbst entwickelte Komponenten. Die Java-Access-Bridge (2.0.2) ist installiert, bzw. freigeschaltet und sie scheint auch zu funktionieren, zumindest der JavaMonkey, das externe Testprogramm von Oracle zum externen Auslesen des AccessibleContext, liest alles korrekt aus und zeigt es auch korrekt an. Nur die Sprachausgabe von Windows liest mir nix vor, außer den Fenstertitel. Alles andere innerhalb der Beispiel-GUI wird nicht vorgelesen.

Ich bin der Meinung, das die Windows-Sprachausgabe selbst nicht mal auf die JAB zugreift. Ich hab den AccessibleContext des Frame manipuliert, so dass er einen anderen AccessibleName als den Fenstertitel zurückgibt. Im JavaMonkey wird der manipulierte Text dargestellt, die Sprachausgabe ließt wieder nur den Fenstertitel vor. Wenn ich debugge und mir Breakpoints innerhalb der Accessibility-Methoden mache, bleib ich da auch stehen, wenn der JavaMonkey ausließt, aber nicht wenn die Sprachausgabe etwas vorlesen soll.

Hab' ich irgendwas vergessen? Die JAB läuft meiner Meinung nach korrekt, sonst würde der JavaMonkey nix auslesen können. Habe alle Oracle-Tutorials und -Seiten durchgewälzt, hab Google gefragt, was mir aber hauptsächlich nur recht alte Treffer liefert. Von Windows 10 ist selten die Rede, meistens von XP oder Win7. Hab mir extra von unserem Admin einen Win7-Rechner aufsetzen lassen, damit ich es damit versuchen kann. Hat auch nicht funktioniert. Meine Umgebung ist Win10 64 Bit mit Java 8 (32 und 64 Bit, beide Varianten versucht, bei beiden Varianten das o.a. Ergebnis).

Falls sich jemand halbwegs mit dem Thema auskennt, bin ich für jeden Tipp dankbar.

Viele Grüße
Tom
 

TomH

Mitglied
Servus mihe7,

danke für den Link. Hab mir das mal durchgelesen und finde den Post recht seltsam.
Narrator (der MS-Screenreader) würde im Moment nicht funktionieren, man soll die JAB freischaltem dann würd's gehen. Aber die JAB freischalten muss man immer, von daher versteh ich nicht, was der Autor mir sagen sagen will. Es werden noch zwei externe Screenreader (NVDA und Jaws) erwähnt, die angeblich funktionieren sollen, aber zumindest der NVDA funktioniert bei mir auch nicht.
Ich kann mir ja fast nicht vorstellen, dass das unter Windows mit Java-Anwendungen generell (noch) nicht funktionieren soll. Dann würde man doch auch im Netz mehr dazu finden.

Trotzdem vielen Dank für deine Hilfe.

VG
Tom
 

marlem

Bekanntes Mitglied
Hallo,

ich kenne mich aus.
Installation der Java Access Bridge unter JRE 7
Bei der Installation der JRE 7 hat Oracle es endlich geschafft, dass die Java Acccess Bridge gleich mit installiert wird. Leider wird der Anwender während des gesamten Installationsvorgangs nicht darauf hingewiesen. Noch schlimmer ist, dass nach Abschluss der Installation die Java Access Bridge noch aktiviert werden muss und dies leider auch nirgendwo steht.
Aktivieren der Java Access Bridge unter JRE 7
Das aktivieren geht entweder über Dos-Kommando:
%JRE_HOME%\bin\jabswitch -enable
%JRE_HOME%\bin\jabswitch -disable
oder
im Windows: Die Vorgehensweise im Windows ist von Version zu Version etwas unterschiedlich. Deswegen gebe ich zwei Möglichkeiten an:
Systemsteuerung -> Erleichterte Bedienung -> Visuelle Darstellung des Bildschirms optimieren
oder
Systemsteuerung -> Erleichterte Bedienung -> Center für Erleichterte Bedienung -> Computer ohne einen Bildschirm verwenden

Hier ganz runter scrollen und einen Haken bei „Java Access Bridge aktivieren“ setzen.
Eine Installationsanleitung auf Englisch finden Sie hier:
JRE 7 Update 6 Now Comes Bundled with the Java Access Bridge
Die Beschriebene Vorgehensweise funktioniert auch bei JRE 8.
Viel Spass beim installieren der Java Access Bridge

Für weitere Fragen stehe ich gerne zur Verfügung.
Einfach hier rein schreiben. :)
 

dzim

Top Contributor
@marlem Und beim JRE7 scheint es auch das letzte Mal mit dabei gewesen zu sein. Keine meiner JDKs (Oracle 8, Azul Software ZuluFX 8, Oracle 11, AdoptOpenJDK 11; Aber: Bell Software Liberica JDK habe ich nicht überprüft) haben es unter Linux nicht, es scheint also nicht mehr Teil der Installation zu sein...
 

marlem

Bekanntes Mitglied
@dzim ohje, muss ich mal schauen. Ich habe mich über ein Jahr mit Barrierefreiheit bei Swing nicht mehr beschäftigt, weil javafx der Standard ist um grafische Benutzeroberflächen zu entwickeln. Aber ich kümmere mich drum. Ich weiß wie ich es herausfinde.
 

TomH

Mitglied
Hallo zusammen,

danke für Eure Hilfe. Ich hab's mittlerweile hinbekommen. Allerdings funktioniert das Ganze trotzdem nur, wenn man die DLLs der JAB in die entspr. Windows-Verzeichnisse kopiert. Und dann funktioniert die Standard-Windows10-Sprachausgabe trotzdem nicht, andere dafür schon. Ich nutze jetzt den schon weiter oben erwähnten NVDA-Screenreader. Den kann man auch als portable Version auf USB-Stick installieren.

Danke nochmal und viele Grüße
Tom
 

marlem

Bekanntes Mitglied
Standard-Windows10-Sprachausgabe trotzdem nicht

Die Standard-Windows10-Sprachausgabe ist schrott! Niemand der blind ist wird jemals mit Ihr arbeiten.
Wenn die Java-Software mit NVDA funktioniert ist alles gut!
Der Screenreader den die meisten blinden benutzen heißt JAWS ( http://www.freedomsci.de/serv01.htm ).
Jaws kostet aber richtig viel Geld. Allerdings kann man eine Demoversion herunterladen die 45 Minuten getestet werden kann.
 

TomH

Mitglied
@marlem
Danke für deine Mühe. Über den Link bin ich auch schon gestoßen.
JAWS hab ich auch schon ausprobiert, aber der installiert ungefragt auch noch siebzehn andere Programme, die die ganze Kiste extrem langsam machen, auch wenn man gerade nichts davon benutzt.
Falls ich noch auf Probleme stoße würd' ich mich wieder melden. :)
Danke und viele Grüße
Tom
 

marlem

Bekanntes Mitglied
Falls ich noch auf Probleme stoße würd' ich mich wieder melden. :)

Gerne! Falls ich es nicht mitbekomme hier, darfst mir auch gerne ne Mail schreiben.
In meinem Profil ist der Link zu meiner Unternehmenswebseite.

Barrierefreie Grüße


Markus
 

Neue Themen


Oben