タブ コントロールの種類

このトピックでは、タブ コントロールの種類に対する Microsoft UI オートメーション サポートに関する情報を提供します。

タブ コントロールは、ノートの仕切ページまたはファイル キャビネットのラベルに似ています。 タブ コントロールを使用すると、アプリケーションでウィンドウまたはダイアログ ボックスの同じ領域に複数のページを定義できます。

次のセクションでは、Tab コントロール型に必要なUI オートメーションツリー構造、プロパティ、コントロール パターン、イベントを定義します。 UI オートメーションの要件は、UI フレームワーク/プラットフォームがコントロールの種類とコントロール パターンのサポートUI オートメーション統合するすべてのタブ コントロールに適用されます。

このトピックは、次のセクションで構成されています。

一般的なツリー構造

次の表は、タブ コントロールに関連するUI オートメーション ツリーの一般的なコントロールとコンテンツ ビューを示し、各ビューに含めることができる内容を示しています。 UI オートメーション ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。

コントロール ビュー コンテンツ ビュー
  • タブ
    • TabItem (1 以上)
    • ScrollBar (0 または 1)
      • Button (0 または 2)
  • タブ
    • TabItem (1 以上)

 

タブ コントロールには、TabItem コントロールの種類に基づく子UI オートメーション要素があります。 タブ 項目がグループ化されている場合 (たとえば、Microsoft Office アプリケーションのように) Tab コントロールの種類は、次のツリー構造に示すように、グループ化されたタブ項目の グループ コントロールの 種類をホストすることもできます。

コントロール ビュー コンテンツ ビュー
  • タブ
    • TabItem (1 以上)
    • Group (0 以上)
      • TabItem (0 以上)
    • ScrollBar (0 または 1)
      • Button (0 または 2)
  • タブ
    • TabItem (1 以上)
    • Group (0 以上)
      • TabItem (0 以上)

 

関連するプロパティ

次の表に、値または定義がタブ コントロールに特に関連するUI オートメーションプロパティの一覧を示します。 UI オートメーションプロパティの詳細については、「UI オートメーション要素からプロパティを取得する」を参照してください。

UI Automation のプロパティ メモ
UIA_AutomationIdPropertyId 「ノート」を参照してください。 このプロパティの値は、UI オートメーション ツリーの生ビュー内のすべてのピア要素間で一意である必要があります。
UIA_BoundingRectanglePropertyId 「ノート」を参照してください。 コントロール全体を格納する最も外側の四角形。
UIA_ClickablePointPropertyId いいえ タブ コントロールにはクリック可能なポイントがありません。
UIA_ControlTypePropertyId タブ
UIA_IsContentElementPropertyId true タブ コントロールは、UI オートメーション ツリーのコンテンツ ビューに常に含まれます。
UIA_IsControlElementPropertyId true タブ コントロールは、UI オートメーション ツリーのコントロール ビューに常に含まれます。
UIA_IsKeyboardFocusablePropertyId true Tab コントロール型は、キーボード フォーカスを受け取ることができる必要があります。 通常、UI オートメーション クライアントはタブ コントロールで IUIAutomationElement::SetFocus を呼び出し、その項目の 1 つがキーボード フォーカスをタブ コントロールに転送します。 タブ コンテナーによっては、その項目の 1 つにフォーカスを設定することなく、フォーカスを受け取ることができます。
UIA_LabeledByPropertyId 「ノート」を参照してください。 タブ コントロールには、通常、このプロパティで公開される静的なテキスト ラベルがあります。
UIA_LocalizedControlTypePropertyId 「ノート」を参照してください。 Tab コントロール型に対応するローカライズされた文字列。 既定値は、en-US または英語 (米国) の "タブ" です。
UIA_NamePropertyId 「ノート」を参照してください。 タブ コントロールに Name プロパティが必要になることはほとんどありません。
UIA_OrientationPropertyId 「ノート」を参照してください。 タブ コントロールでは、そのタブが水平方向または垂直方向のどちらに配置されるのかを常に示す必要があります。

 

必須のコントロール パターン

次の表に、すべてのタブ コントロールでサポートされる必要がある UI オートメーション コントロールのパターンを示します。 コントロール パターンの詳細については、「 UI Automation Control Patterns Overview」を参照してください。

コントロール パターン/パターン プロパティ サポート/値 メモ
ISelectionProvider 必須 すべてのタブ コントロールは、 選択 コントロール パターンをサポートする必要があります。
IsSelectionRequired true タブ コントロールで、常に選択が行われる必要があります。
CanSelectMultiple FALSE タブ コントロールは、常に単一選択コンテナーです。
IScrollProvider 依存 タブ コントロールに 一連のタブ項目をスクロールできるウィジェットがある場合は、スクロール コントロール パターンをサポートする必要があります。

 

必須イベント

次の表に、タブ コントロールがサポートするために必要なUI オートメーション イベントの一覧を示します。 イベントの詳細については、「 UI Automation Events Overview」を参照してください。

UI オートメーション イベント メモ
UIA_AutomationFocusChangedEventId
プロパティ変更イベントUIA_BoundingRectanglePropertyId
プロパティ変更イベントUIA_IsEnabledPropertyId コントロールが IsEnabled プロパティをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベントUIA_IsOffscreenPropertyId コントロールが IsOffscreen プロパティをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベントUIA_ScrollHorizontallyScrollablePropertyIdします。 コントロールが スクロール コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベントUIA_ScrollHorizontalScrollPercentPropertyIdします。 コントロールが スクロール コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベントUIA_ScrollHorizontalViewSizePropertyIdします。 コントロールが スクロール コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベントUIA_ScrollVerticallyScrollablePropertyIdします。 コントロールが スクロール コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベントUIA_ScrollVerticalScrollPercentPropertyIdします。 コントロールが スクロール コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベントUIA_ScrollVerticalViewSizePropertyId します。 コントロールが スクロール コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。
UIA_StructureChangedEventId

 

概念

UI オートメーション コントロール型の概要

UI オートメーションの概要