Share via


アクティブなアクセシビリティのしくみ

Microsoft Active Accessibility は、 クライアントと呼ばれるアクセシビリティ補助機能が、他のアプリケーションやオペレーティング システムの標準およびカスタム UI 要素と対話できるように設計されています。 Microsoft Active Accessibility クライアントは、Microsoft Active Accessibility を使用して、アプリケーションの UI 要素にアクセス、識別、または操作するプログラムです。 クライアントには、アクセシビリティ支援、自動テスト ツール、一部のコンピューター ベースのトレーニング アプリケーションが含まれます。

Microsoft Active Accessibility を使用すると、クライアント アプリケーションで次のことができます。

  • 情報を照会する。たとえば、特定の場所にある UI 要素についてです。
  • 情報が変更されたときに通知を受け取る。たとえば、コントロールが灰色になった場合や、テキスト文字列が変更されたときなどです。
  • ユーザー インターフェイスまたはドキュメントの内容に影響を与えるアクションを実行する。たとえば、プッシュ ボタンをクリックし、メニューをドロップダウンして、メニュー コマンドを選択します。

クライアントと対話して情報を提供するアプリケーションは 、サーバーと呼ばれます。 サーバーは Microsoft Active Accessibility を使用して、その UI 要素に関する情報をクライアントに提供します。 Microsoft Active Accessibility を使用してユーザー インターフェイスに関する情報を公開するコントロール、モジュール、またはアプリケーションは、Microsoft Active Accessibility サーバーと見なされます。 サーバーは、イベント通知 (NotifyWinEvent の呼び出しなど) を送信し、UI 要素へのアクセスを求めるクライアント要求 (OLEACC から送信されたメッセージの処理など) に応答することで、クライアントと通信WM_GETOBJECT。 サーバーは 、IAccessible インターフェイスを介して情報を公開します。

Microsoft Active Accessibility を使用すると、サーバー アプリケーションで次のことができます。

  • カスタム ユーザー インターフェイス オブジェクトとそのクライアント ウィンドウの内容に関する情報を提供します。
  • ユーザー インターフェイスが変更されたときに通知を送信します。

たとえば、ユーザーがワード プロセッサのカスタム ツール バーから口頭でコマンドを選択できるようにするには、音声認識プログラムにそのツール バーに関する情報が必要です。 そのため、ワード プロセッサでは、その情報を使用できるようにする必要があります。 Microsoft Active Accessibility は、ワード プロセッサがカスタム ツール バーに関する情報を公開し、音声認識プログラムがその情報を取得するための手段を提供します。

クライアント アプリケーションとアクティブ なアクセシビリティ

サーバー UI が変更されたときに Microsoft Active Accessibility クライアントに通知を受け取り、その情報をユーザーに伝達できるようにする必要があります。 クライアントに UI の変更に関する通知を確実に受け取るために、Windows イベント (WinEvents) と呼ばれるメカニズムを使用して通知を受け取るために登録します。 詳細については、「 WinEvents」を参照してください。

特定の UI 要素の詳細と操作を行うために、クライアントは Microsoft Active Accessibility Component Object Model (COM) インターフェイス IAccessible を使用します。

クライアントは、次の 4 つの方法で UI 要素の IAccessible オブジェクトを取得できます。