Suggerimenti per dare accessibilità alle interfacce utente

Below is a series of tips for making applications compatible with accessibility programs, such as the Accessibility interface provided by Windows.

Use groups instead of labels.
If you use a Label to title a group of related widgets, remove the label and replace their parent composite with a Group whose text is the same as the title Label.
 
Avoid intermediate composites.
Accessibility tools will read as far up the parent hierarchy of a widget with focus as possible. Assicurarsi che non esistano widget senza testo nella struttura.
 
Use read-only texts instead of labels.
A Text can be accessed using the keyboard and should be used if you want the information in a label to be accessible to keyboard navigation. Note that a label beside a text will be treated as a title and so if you have a title/value pair, it is only required that you make the value widget a Text.
 
Leggere e comprendere l'elenco di controllo IBM
IBM fornisce un utile elenco di controllo per ottenere un buon accesso facilitato alla pagina http://www.ibm.com/able/guidelines/software/accesssoftware.html
 
Assegnare tasti di scelta a tutti i menu e voci di menu
Verificare che tali tasti di scelta siano univoci all'interno di un determinato menu. Se un menu viene composto dinamicamente da più plugin, è meglio non assegnare tasti di scelta, dal momento che sarebbe impossibile evitare conflitti (ad esempio, l'elenco File > Nuovo o Finestra > Mostra vista)
 
Assign mnemonics to all labels of controls in dialogs / preference pages / property pages (e.g. buttons, check-boxes, radio buttons, etc)
Verificare che tali tasti di scelta siano univoci all'interno della finestra di dialogo. Fare attenzione ad evitare conflitti con i pulsanti predefiniti (ad esempio, Ripristina &predefiniti, &Applica nelle pagine delle preferenze; &Avanti, &Indietro, &Fine nelle procedure guidate). Non assegnare tasti di scelta ai pulsanti OK e Annulla. Se si rende OK il pulsante predefinito della shell e Annulla equivale a chiudere la shell, i tasti Invio e Esc sono associati a tali pulsanti per impostazione predefinita. In genere utilizzare i tasti Esc o Invio non è una buona idea.
 
Assicurarsi che i controlli che non presentano etichette siano preceduti da un'etichetta.
Se un controllo non ha una propria etichetta (ad esempio un campo di testo), utilizzare un'etichetta precedente che termina con ':' e assegnare ad essa un tasto di scelta. I programmi di lettura dello schermo come JAWS leggeranno questa etichetta quando il controllo è attivo (vedere Finestra > Preferenze > Generale)
 
Avoid extra free-standing labels.
You cannot navigate to free-standing labels with the keyboard and screen readers like JAWS skip these since they do not take focus
 
Non assegnare tasti di scelta ai controlli nella finestra principale
Non assegnare tasti di scelta ai controlli della finestra principale (diversi dai menu principali e dalle voci dei menu principali), anche se questa ha l'aspetto di una finestra di dialogo (ad esempio, gli editor di moduli in org.eclipse.ui.forms) poiché in genere si creano conflitti con i tasti di scelta dei menu
 
Assegnare tasti di scelta rapida per le funzioni utilizzate di frequente (e solo per queste)
Esistono attualmente solo due modi per collegare tasti di scelta rapida in SWT: Consultare la tabella dei tasti di scelta rapida di Eclipse SDK, disponibile in Eclipse nella pagina delle preferenze Generale > Tasti, per evitare conflitti.
 
Evitare le combinazioni Alt+{tasto}, Ctrl+Alt+{tasto} e Ctrl+Spazio+{tasto}
Cercare di salvare il contesto di navigazione
Ad esempio, in Finestra > Preferenze, è possibile ricordare quale pagina è stata selezionata per ultima. Questo evita di dover esplorare l'intero elenco ogni volta
 
Assegnare a una persona specifica del team la responsabilità dell'accesso facilitato per il progetto
Assicurarsi che una persona del team conosca l'importanza di un buon accesso facilitato e sia disponibile a fornire una collaborazione completa.
 
Verificare l'accessibilità
Stabilire una giornata in cui "non si adoperi il mouse" e si tenti di utilizzare il prodotto servendosi della sola tastiera. Se si sviluppa in ambiente Windows, ottenere una copia di JAWSTM e verificare che sia possibile utilizzare l'UI con questo strumento