メニュー コントロールの種類
このトピックでは、メニュー コントロールの種類に対する Microsoft UI オートメーションのサポートについて説明します。
メニュー コントロールを使用すると、コマンドとイベント ハンドラーに関連付けられた要素を階層的に編成できます。 一般的な Microsoft Windows アプリケーションでは、メニュー バーに複数のメニュー ボタン (ファイル、編集、ウィンドウなど) が含まれており、各メニュー ボタンにメニューが表示されます。 メニューには、メニュー項目のコレクション (New、Open、Closeなど) が含まれています。このコレクションを展開すると、追加のメニュー項目を表示したり、クリックしたときに特定のアクションを実行したりできます。
次のセクションでは、Menu コントロール型に必要な UI オートメーション ツリー構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI オートメーションの要件は、UI フレームワーク/プラットフォームがコントロールの種類とコントロール パターンに対する UI オートメーションのサポートを統合するすべてのメニュー コントロールに適用されます。
このトピックには、次のセクションが含まれています。
- 一般的なツリー構造の
- 関連するプロパティ を する
- 必要なコントロール パターンの
- 必要なイベント を する
- 関連トピック
一般的なツリー構造
次の表は、メニュー コントロールに関連する UI オートメーション ツリーの一般的なコントロールとコンテンツ ビューを示し、各ビューに含めることができる内容を示しています。 UI オートメーション ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。
コントロール ビュー | コンテンツ ビュー |
---|---|
|
|
メニュー コントロールは、UI オートメーション ツリーのコントロール ビューとコンテンツ ビューに常に表示されます。 メニュー コントロールは、情報が参照しているコントロールの下に表示されます。 UI オートメーション クライアントは、UIA_MenuOpenedEventId をリッスンして、メニュー コントロールによって伝達される情報を一貫して取得できるようにします。 コンテキスト メニュー コントロールは特殊なケースです。 これらは、デスクトップまたは最上位のアプリケーション ウィンドウの子として表示される場合があります。
メニュー コントロールには、編集コントロールやコンボ ボックスなどの他のコントロールをその構造内に含めることができます。 これらの追加コントロールは、コントロール ビューとコンテンツ ビューの前の表に示した "その他のコントロール" に対応します。
関連するプロパティ
次の表に、Menu コントロール型に特に関連する値または定義を持つ UI オートメーション プロパティを示します。 UI オートメーション プロパティの詳細については、「UI オートメーション要素からプロパティを取得する」を参照してください。
UI オートメーション プロパティ | 価値 | 筆記 |
---|---|---|
UIA_ControlTypePropertyId | メニューの | |
UIA_IsContentElementPropertyId | 真 | メニュー コントロールは、常に UI オートメーション ツリーのコンテンツ ビューに含まれます。 |
UIA_IsControlElementPropertyId | 真 | メニュー コントロールは、UI オートメーション ツリーのコントロール ビューに常に含まれます。 |
UIA_LabeledByPropertyId | ヌル | 一般的なメニュー コントロールでは、ラベルは使用されません。 |
UIA_NamePropertyId | ノートを参照してください。 | メニュー コントロールでは、Name プロパティを設定する必要はありません。または、サブメニューを開いたメニュー項目など、関連付けられているコントロールと同じ名前を持つことができます。 |
必要なコントロール パターン
Menu コントロールの種類に必要なコントロール パターンはありません。
必要なイベント
メニュー コントロールは、画面に表示されるときに UIA_MenuOpenedEventId イベントを発生させる必要があります。 UIA_MenuOpenedEventId イベントには、コントロールのテキストが含まれます。 UIA_MenuClosedEventId イベントは、メニューが画面から消えたときに発生する必要があります。
次の表に、メニュー コントロールがサポートするために必要な UI オートメーション イベントを示します。 イベントの詳細については、「UI オートメーション イベントの概要」を参照してください。
UI オートメーション イベント | 筆記 |
---|---|
UIA_AutomationFocusChangedEventId | |
プロパティ変更イベント UIA_BoundingRectanglePropertyId します。 | |
プロパティ変更イベントを UIA_IsEnabledPropertyId します。 | コントロールが IsEnabled プロパティをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_IsOffscreenPropertyId します。 | コントロールが IsOffscreen プロパティをサポートしている場合は、このイベントをサポートする必要があります。 |
UIA_MenuClosedEventId | |
UIA_MenuOpenedEventId | |
UIA_StructureChangedEventId |
関連トピック