User interface and high-contrast mode

Nella fase di test di un’applicazione (gestionale o di altro tipo) non deve mancare la verifica di usabilità (del software) in presenza di un sistema operativo che lavora in modalità contrasto elevato.

Figura 1 – Opzioni del gruppo accessibilità

 

Questa opzione, del gruppo accessibilità, consente di impostare una combinazione di colori a contrasto elevato (bianco su nero, nero su bianco, nero su giallino, giallo su nero, e simili) che accentua il contrasto del testo e delle immagini favorendone la distinzione e l’identificazione. L’impostazione contrasto elevato viene utilizzata per aiutare gli utenti ipovedenti nell'utilizzo del software.

Ipotizziamo di aver realizzato un’applicazione, con l’ambiente di sviluppo Delphi for Win32, che fa uso di label e di aver assegnato (fisso) il colore nero alle proprietà Font.Color di tutte le label presenti nell’applicazione (Font.Color := clBlack).

La figura seguente illustra una finestra di esempio in cui è presente una label ed un campo di input, la proprietà Font.Color della label è stata impostata a clBlack.

Figura 2 – Finestra di Test

 

L’applicazione funziona bene, ma cosa accade se viene utilizzata su un client in cui è stata attivata l’opzione Contrasto Elevato di Windows ? Perché ad esempio l’utente ha un problema di ipovisione ? La risposta è nella figura 3.

Figura 3 – Finestra di Test con S.O. in modalità Contrasto Elevato

 

L’etichetta non è visibile!! Non è possibile attribuire un significato del campo di input!!

Per migliorare l’usabilità dell’applicazione, in questa situazione, possiamo sostituire l’assegnazione del colore fisso clBlack con il colore clWindowText (Font.Color := clWindowText), che in questo caso rappresenta il default. Il S.O. sarà quindi in grado di adeguare il colore del testo in funzione delle opzioni generali, tra cui quelle del gruppo accessibilità. In modalità contrasto elevato, il testo dell’etichetta risulterà essere quindi di colore bianco o giallo come illustrato in figura 4 ... e sarà visibile all'utente.

 

Figura 4 – Finestra di Test con S.O. in modalità contrasto elevato (e Font.Color := clWindowText)

Per conoscere se Windows sta lavorando in modalità a contrasto elevato si può utilizzare la funzione SystemParametersInfo()

 

Published mercoledì 31 marzo 2010 0.38 by sgovoni

Comments

No Comments