次の方法で共有


ScrollBar コントロールの種類

このトピックでは、ScrollBar コントロール型に対する Microsoft UI オートメーションのサポートについて説明します。

スクロール バー コントロールを使用すると、ユーザーはウィンドウまたは項目コンテナー内のコンテンツをスクロールできます。 コントロールは、一連のボタンとサム コントロールで構成されます。

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

このトピックには、次のセクションが含まれています。

一般的なツリー構造

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

コントロール ビュー コンテンツ ビュー
  • ScrollBar
    • ボタン (0、2、または 4)
    • Thumb (0 または 1)
適用されません。 (スクロール バー コントロールにはコンテンツがありません)。

 

スクロール バー コントロールには、0 から 5 個の子を含めることができます。 サブツリーには複数のボタン コントロールがあるため、要素は項目ごとに特定の UIA_AutomationIdPropertyId 値を設定して、自動テスト ツールで検出できるようにする必要があります。

関連するプロパティ

次の表に、スクロール バー コントロールに特に関連する値または定義を持つ UI オートメーション プロパティを示します。 スクロール バー コントロールにコンテンツが含まれることはありません。その機能は、スクロールするコンテナーでサポートされている Scroll コントロール パターンを介して公開されます。

UI オートメーション プロパティの詳細については、「UI オートメーション要素からプロパティを取得する」を参照してください。

UI オートメーション プロパティ 価値 筆記
UIA_AutomationIdPropertyId ノートを参照してください。 このプロパティの値は、UI オートメーション ツリーの生ビュー内のすべてのピア要素で一意である必要があります。
UIA_BoundingRectanglePropertyId ノートを参照してください。 コントロール全体を含む最も外側の四角形。
UIA_ClickablePointPropertyId NaN スクロール バー コントロールにはクリック可能なポイントがありません。
UIA_ControlTypePropertyId ScrollBar この値はすべてのフレームワークで同じです。 スライダーとして機能するスクロール バーでは、Slider コントロールの種類を使用する必要があります。
UIA_IsContentElementPropertyId スクロール バー コントロールがコンテンツ要素になることはありません。 スクロール バーがスタンドアロン コントロールの場合は、Slider コントロール型を満たし、IUIAutomationElement::CurrentControlType (または CachedControlType) プロパティの UIA_SliderControlTypeId を返必要があります。
UIA_IsControlElementPropertyId スクロール バー コントロールは、UI オートメーション ツリーのコントロール ビューに常に含まれます。
UIA_IsKeyboardFocusablePropertyId ノートを参照してください。 コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。 スクロール バー コントロールがフォーカスを受け取ることはめったにありませんが、フォーカスは子ボタンや親指ではなく、スクロール バー コントロール自体に残る必要があります。 ユーザーは、上方向キーと下方向キー (または右方向キーと左方向キー) キー、またはページの上方向キーとページ下方向キーを使用して、すべてのスクロール 操作を実行できる必要があります。
UIA_LabeledByPropertyId ヌル スクロール バーにはラベルがありません。
UIA_LocalizedControlTypePropertyId ノートを参照してください。 ScrollBar コントロール型に対応するローカライズされた文字列。 既定値は、en-US または英語 (米国) の "スクロール バー" です。
UIA_NamePropertyId ヌル スクロール バー コントロールにはコンテンツ要素がないため、UIA_NamePropertyId プロパティを設定する必要はありません。
UIA_OrientationPropertyId ノートを参照してください。 スクロール バー コントロールは、常に水平方向または垂直方向を公開する必要があります。

 

必要なコントロール パターン

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

手記

スクロール バーをマウス操作専用のコントロールとして使用する場合、コントロール パターンはサポートされません。 アプリケーション内でスライダー コントロールとして使用する場合は、Slider コントロールの種類を指定する必要があります。

 

コントロール パターン 支える 筆記
IRangeValueProvider 依存 RangeValue コントロール パターンは、スクロール バーがあるコンテナーで Scroll コントロール パターンがサポートされていない場合にのみサポートする必要があります。
IScrollProvider 一度もない スクロール コントロール パターンは、スクロール バーで直接サポートされることはありません。

 

必要なイベント

次の表は、スクロール バー コントロールがサポートするために必要な UI オートメーション イベントの一覧です。 イベントの詳細については、「UI オートメーション イベントの概要」を参照してください。

UI オートメーション イベント 筆記
UIA_AutomationFocusChangedEventId
プロパティ変更イベント UIA_BoundingRectanglePropertyId します。
プロパティ変更イベントを UIA_IsEnabledPropertyId します。 コントロールが IsEnabled プロパティをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベント UIA_IsOffscreenPropertyId します。 コントロールが IsOffscreen プロパティをサポートしている場合は、このイベントをサポートする必要があります。
UIA_StructureChangedEventId
プロパティ UIA_RangeValueValuePropertyId 変更されたイベントです。 コントロールが RangeValue コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。

 

概念

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

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