System-LevelイベントとObject-Level イベント
Microsoft Active Accessibility では、WinEvents の 3 つのクラス ( システム レベル、 オブジェクト レベル、コンソール) を使用 します。 それぞれに、対応する次のいずれかの イベント定数 値があります。
- で始まるイベント定数EVENT_SYSTEMシステム レベルのイベントを識別します。 これらのイベントは、システム内のすべてのアプリケーションに影響を与える状況を記述します。
- で始まるイベント定数EVENT_OBJECTオブジェクト レベルのイベントを識別します。 これらのイベントは、1 つのアプリケーション内のオブジェクトに固有の状況に関連します。
- で始まるイベント定数EVENT_CONSOLEコンソール レベルのイベントを識別します。 これらのイベントは、コンソール ウィンドウでの変更を示します。
イベントのシステム レベルとオブジェクト レベルの両方のクラスは、オペレーティング システムとサーバー アプリケーションによって生成されます。 オペレーティング システムは、次のシナリオでシステム レベルおよびオブジェクト レベルのイベントを生成します。
- フォーカスの変更に関するシステム全体の通知
- アクティブ化の変更
- 共通コントロールなど、システム提供のオブジェクトに関するイベント
サーバー アプリケーションは、カスタム メニューやスクロール バーなど、システム オブジェクトをレプリケートするカスタム オブジェクトのシステム レベルのイベントを生成します。
サーバー アプリケーションは、通常、オブジェクトの作成、破棄、選択など、含まれているアクセス可能なオブジェクトに対する変更に対してオブジェクト レベルのイベントを生成します。
システムはウィンドウ オブジェクトのオブジェクト レベルのイベントを生成しますが、サーバーは 、ウィンドウ に含まれるすべてのアクセス可能なオブジェクトに対してオブジェクト レベルのイベントも送信する必要があります。 たとえば、サーバー アプリケーションがアプリケーション定義のウィンドウ クラスを登録してカスタム コントロールを作成した場合、システムはカスタム コントロールを含むウィンドウに対してオブジェクト レベルのイベントを生成します。サーバーは、コントロールに関する情報を提供するアクセス可能なオブジェクトのオブジェクト レベルのイベントを生成します。
サーバーは、 IAccessible インターフェイスを実装するカスタム コントロールのオブジェクト レベルのイベントのみを生成します。 詳細については、「 カスタム ユーザー インターフェイス要素」を参照してください。