適切な WinEvent の生成
サーバー開発者は、ウィンドウ ベースの UI 要素、ウィンドウレス UI 要素、高度にカスタマイズされた動作を持つ UI 要素など、すべての UI 要素に対して適切な WinEvent が確実に生成されるようにする必要があります。
USER は、標準 の HWND ベースの UI 要素に対する既定の WinEvent サポートを提供します。 USER はこれらのイベントを自動的に生成するため、サーバーは、USER によってイベントがまだ生成されていないカスタム コントロール、ウィンドウレス要素、またはコントロールに対してのみイベントを生成する必要があります。
イベントを送信するために、サーバーは NotifyWinEvent を 呼び出し、詳細についてはクライアント要求に応答できるウィンドウのイベント定数、オブジェクト ID、 HWND を渡します。 発生する必要があるイベントは、UI 要素の種類によって異なります。 すべてのコントロールに対して送信する必要がある一般的なイベントと、適切な UI 要素に対してのみ送信する必要がある特定のイベントがあります。
一般的なイベント
すべての UI 要素に対して一般的な WinEvents を送信できます。 具体的な内容は次のとおりです。
- EVENT_OBJECT_CREATE (オブジェクトの作成時)
- EVENT_OBJECT_DESTROY (オブジェクトが破棄されたとき)
- EVENT_OBJECT_SHOW (オブジェクトが表示されている場合)
- EVENT_OBJECT_HIDE (オブジェクトが非表示の場合)
特定のイベント
特定の種類の UI 要素に対して送信できる特定の WinEvent もあります。 たとえば、ユーザーがリスト ボックスなどの選択を行えるようにするコントロールには、 EVENT_OBJECT_SELECTION を使用します。
特定の種類の UI 要素に必要なイベントの詳細については、次のリソースを参照してください。
- 付録 A: サポートされているユーザー インターフェイス要素リファレンス。 この付録には、Microsoft Active Accessibility によって公開されるシステム生成 UI 要素に関する情報が含まれています。 各コントロールのドキュメントには、UI 要素によって生成できるイベントに関する情報が含まれています。
- イベント定数。 このトピックには、オペレーティング システムとサーバー アプリケーションによって生成されるイベントに関する情報が含まれています。
- アクセシビリティ対応の Event Watcher (AccEvent.exe)。 このツールは、USER が特定の UI 要素に対して送信するイベントを示します。 このツールを使用して、UI 要素に対して期待できるイベントを学習できます。 詳細については、「 Accessible Event Watcher」を参照してください。