讓使用者介面可供存取的要訣
下列為 Windows 所提供 IAccessibility 介面有用的要訣集。
- 使用群組而非標籤。
- 如果您使用標籤作為相關的小組件群組的標題,移除標籤並以標題標籤相同的群組文字取代母項組合。
- 避免中間的組合。
- IAccessibility 工具讀取著重在有多少小組件要讀取的小組件的母項階層。
請確定樹狀結構沒有無文字的小組件。
- 使用唯讀文字而非標籤。
- 如果您想要標籤中的資訊為可存取的鍵盤導覽,應該使用鍵盤來存取文字。
請注意,文字旁的標籤將被視為標題,所以如果標題為:想要顯示的值配對,您只要將值小組件變成「文字」即可。
- 讀取並瞭解 IBM 核對清單。
- IBM 在下列網頁中,提供有用的協助工具核對清單:
http://www.ibm.com/able/guidelines/software/accesssoftware.html
- 指定助記鍵給所有功能表和功能表項目。
- 請確定在給定功能表中,它們是獨一無二的。如果功能表是由多重外掛程式所動態組成的,
最好不要指定助記字元,因為通常無法避免衝突(如檔案 > 新建清單,
或視窗 > 顯示視圖清單)
- 指派助記鍵給對話框 / 喜好設定頁面 / 內容頁面中的
所有控制項標籤(例如,按鈕、勾選框、圓鈕等等)
- 請確定在對話框中它們是獨一無二的。請小心避免
預設按鈕的衝突(例如,喜好設定頁面中的還原預設值(&D)、套用(&A);精靈中的下一步(&N)、上一步(&B)、完成(&F)。)
請勿指派功能鍵縮寫給確定和取消按鈕。如果您讓「確定」作為 Shell 的預設按鈕,而
「取消」相等於關閉 Shell,則 Enter 和 Esc 依預設會對映至這些按鈕。
一般來說使用 Esc 或 Enter 來處理動作是一個壞主意。
- 請確定沒有標籤的控制項前面是標籤。
- 如果控制項沒有自己的標籤(例如,文字欄位),請使用先前的標籤,且以 ':' 作為結束,並指派助記鍵給它。當控制項取得焦點時,畫面讀取器(如 JAWS)將讀取這個標籤(請參閱視窗 > 喜好設定 > 一般)
- 避免額外的獨立式標籤。
- 您無法使用鍵盤導覽這些獨立式標籤,而畫面讀取器(如 JAWS)會跳過這些標籤,因為他們無法取得焦點
- 請勿指派助記鍵給主視窗中的控制項。
- 請勿在主視窗的控制項中(主要功能表和主要功能表項目除外)指派助記鍵,即使它看起來像是個對話框(例如,org.eclipse.ui.forms 的表單編輯器),因為這些通常都會與功能表的助記鍵有所衝突
- 為經常使用的功能(只有經常使用的功能才可以)指派快速鍵。
- 目前只有兩個方法在 SWT 上連結按鍵:
- 利用在主功能表列的功能表項目上設定加速器(在快速功能表會被忽略)-- JFace 動作支援這個
- 利用在特定控制項上連結鍵接聽器(例如,視圖或編輯器中的實作)
請參閱 Eclipse SDK 快速鍵的表格,其位於 Eclipse 內的一般 > 按鍵喜好設定頁面中,以避免衝突。
- 避免 Alt+{key}、Ctrl+Alt+{key} 和 Ctrl+Space+{key} 組合。
- Alt+{key} 組合可能會與功能表助記鍵衝突
- Ctrl+Alt+{key} 組合會與在國際鍵盤上輸入的特殊字元相衝突 (alt Gr = Ctrl+Alt)
- Ctrl+Space+{key} 組合,會與 Ctrl-Space 衝突,其用於在亞洲語言中切換模式。
- 嘗試儲存導覽環境定義。
- 例如,在視窗 > 喜好設定中,我們現在會記得最後選取的是那一個頁面。這可以避免每一次必須導覽整個清單。
- 指定團隊中特定的人員負責專案的可存取性。
- 每件重要的事項都需要有人支持。請確定團隊中的每個人都知道良好的可存取性是很重要的,而且都願意完全配合負責的人員。
- 測試協助工具。
- 讓您的團隊保留臨時發生的「不使用滑鼠的一天」,其中他們嘗試只以鍵盤來使用產品。如果您在 Window 上開發,
請取得 JAWSTM 的副本,
並確定您的 UI 可以與它搭配使用。