以下に挙げるのは、Windows が提供する IAccessibility インターフェースを使用可能にする、 一連のヒントです。
1) Label の代わりに Group を使用する
関連するウィジェットのグループに表題を付けるために Label を使用する場合は、 ラベルを除去して、親の複合を、テキストが表題 Label と同じ Group で置換します。
2) 中間複合の回避
IAccessibility ツールは、読み取るウィジェットがあるかぎり、フォーカスのあるウィジェットの親階層を上に読み取っていきます。 テキストのないウィジェットはツリー内にはないことを確認してください。
3) Label の代わりに読み取り専用テキストを使用する
テキストは、キーボードを使用してアクセスできます。ラベル内の情報をキーボード・ナビゲーションでアクセス可能にしたい場合は、キーボードを使用してください。テキストのそばのラベルは表題として扱われるため、 表示したい表題 : 値の対がある場合は、値ウィジェットを Text にすることだけが必要となるので注意してください。
4) IBM チェックリストを読み取り、理解する。 「 http://www-3.ibm.com/able/accesssoftware.html」
5) すべてのメニューおよびメニュー項目に簡略記号を割り当てる
それらは指定したメニューで固有であることを確認します。 メニューが複数のプラグインからダイナミックに合成されている場合、 一般的に競合が避けがたいため、簡略記号を割り当てない方がよいかもしれません。 (例:「ファイル」>「新規」リスト、または「ウィンドウ」>「ビュー表示」リスト)
6) ダイアログ / 設定ページ / プロパティー・ページ内のすべてのコントロール・ラベルに簡略記号を割り当てる (例えばボタン、チェック・ボックス、ラジオ・ボタンなど)
それらがダイアログ内で固有であることを確認します。 デフォルト・ボタンの衝突を避けるようにしてください (例えば、設定ページでは「復元」、「デフォルト」、「適用」。ウィザードでは「次へ」、「戻る」、「終了」)。 「OK」および「キャンセル」ボタンに簡略記号を割り当てないでください。 シェルのデフォルト・ボタンを「OK」にし、さらに「キャンセル」をシェルをクローズと等価のものにすると、 Enter (キー) および Esc は、デフォルトでこれらにマップします。 一般的には、Esc あるいは Enter (キー) で何かをすることは良い考えではありません。
7) コントロールが独自のラベル (たとえばテキスト・フィールド) を持っていない場合は、 「:」で終わる先行ラベルを使用して、それに簡略記号を割り当てる。 コントロールがフォーカスするとき (たとえば「ウィンドウ」>「設定」>「ワークベンチ」を参照)、 JAWS のようなスクリーン・リーダー (読み上げソフトウェア) がこのラベルを読み取ります。
8) キーボードでは追加の自立ラベルをナビゲートできないのでこれらのラベルを避け、 JAWS のような画面リーダーはフォーカスを取れないので、これらのラベルを外す。
9) 通常、メニューの簡略記号と競合するので、 (メインメニューおよびメインメニュー項目以外の) メイン・ウィンドウ内のコントロールに簡略記号を割り当てないようにする。 それがダイアログ (例えば WSAD のフォーム・エディター) のようなものでも同じです。
10) 頻繁に使用する機能 (頻繁に使用する機能のみ) にショートカット・キーを割り当てる。
SWT でショートカット・キーをフックする方法は、現在、次の 2 つだけです。
- メイン・メニュー・バーのメニュー項目にアクセラレーターを設定する (コンテキスト・メニューでは無視されるが)- JFace アクションではこれをサポートします。
- (例えば、ビューあるいはエディターのインプリメンテーションで) 特定コントロールにキー・リスナーをフックする
競合を避けるために Eclipse SDK ショートカット・キーのテーブルを調べる (「eclipse.org -> プロジェクト -> Eclipse プロジェクト -> プラットフォーム -> UI -> 開発リソース -> アクセス可能性」を使用不可にする)。
12) Alt+{キー} の組み合わせは、メニュー簡略記号と競合するので避ける
13) Ctrl+Alt+{キー} の組み合わせは、 しばしばインターナショナル・キーボードの特殊文字入力と競合するので避ける (alt Gr = Ctrl+Alt)
14) Ctrl+ スペース +{キー} の組み合わせは、 Ctrl- スペースがアジアの言語でモード切り替えに使用するので避ける。
15) ナビゲーション・コンテキストの保管を試行する。
「ワークベンチ」 / 設定」で、最後に選択したページがどれかを記憶します。 これにより、毎回リストをナビゲートする必要がなくなります。
16) チームに特定の人を割り当てて、 プロジェクトのアクセシビリティーに責任を持ってもらう。
17) アクセシビリティーのテストをする。
チームに時々「マウスからプラグを抜く日」を決めてもらい、 キーボードのみを使用する製品の使用の試行を依頼します。 JAWSTM (http://www.freedomscientific.com/) のコピーを入手し、 UI が使用可能であることを確認してください。