2009-06-02 8 views
7

Ho visto un sacco di esempi che utilizzano
getAccessibleContext(). SetAccessibleDescription (...)
per impostare qualche descrizione "magia".Qual è l'utilizzo di AccessibleContext in Java Swing?

A cosa serve questa descrizione? Dove può essere visto e come dovrebbe supportare l'accessibilità?

Perché setDescription (...) non viene utilizzato?

Inoltre, qual è la sua opinione/esperienza con l'accessibilità Java roba?

risposta

3

In realtà non ho usato le strutture di accessibilità di Swing nelle mie applicazioni (e probabilmente dovrei), ma presumo che possa essere d'aiuto nell'uso di screen reader e altre tecnologie che migliorino l'accessibilità di un'applicazione.

Dal Accessibility and the Swing Set articolo:

Se un'applicazione supporta pienamente l'API Java Accessibility, può essere compatibile con, e amichevole verso, lettori di schermo, ingranditori di schermo, e altri tipi di assistive tecnologie.

L'articolo collegato approfondisce le funzionalità di accessibilità di Swing e dello Accessibily API.

+0

Grazie, non ho pensato agli screen reader e ad altre app di terze parti. –

1

Come accennato, le informazioni accessibili vengono utilizzate per esporre informazioni a tecnologie assistive come gli screen reader (in breve, come utente di computer non vedenti, utilizzo uno screen reader per raccogliere informazioni utili su quale controllo si concentra e su altre cose utili che accadono in un'applicazione per poi parlarne. Esempi di screen reader sono NVDA www.nvda-project.org per Windows, Orca http://live.gnome.org/Orca per il desktop gnome su piattaforme unix e voce fuori campo inclusa per impostazione predefinita in MacOSX). Per un certo numero di controlli standard che contengono testo potresti riuscire a scappare senza dover impostare esplicitamente le informazioni accessibili (ad esempio, se hai un pulsante con la parola di testo "OK", probabilmente questo verrà detto correttamente da uno screen reader. L'importanza di impostare le informazioni accessibili arriva quando non si visualizza testo (ad esempio un pulsante con un'etichetta grafica) o quando si sviluppa un controllo personalizzato (dalla memoria senza tornare indietro attraverso alcuni documenti di swing Java, penso che sia accessibile il nome è identificare il controllo e la descrizione accessibile è quella di fornire informazioni aggiuntive, può essere un indizio su come usarlo se è un controllo personalizzato)

Ora se si desidera vedere come funziona, NVDA e Orca sono opensource i progetti e la voce fuori campo sono inclusi in MacOSX 10.4 (credo) e più in alto, quindi puoi provare uno di questi a costo zero (a differenza di alcune delle offerte commerciali whi ch può essere molto costoso).