ScrollBar コントロールの種類
このトピックでは、ScrollBar コントロール型の Microsoft UI オートメーション サポートについて説明します。
スクロール バー コントロールを使用すると、ユーザーは、ウィンドウまたは項目のコンテナー内のコンテンツをスクロールできます。 コントロールは、一連のボタンとサム コントロールで構成されます。
次のセクションでは、ScrollBar コントロール型に必要なUI オートメーションツリー構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI オートメーションの要件は、UI フレームワーク/プラットフォームがコントロールの種類とコントロール パターンのサポートUI オートメーション統合するすべてのスクロール バー コントロールに適用されます。
このトピックは、次のセクションで構成されています。
一般的なツリー構造
次の表は、スクロール バー コントロールに関連するUI オートメーション ツリーの一般的なコントロールとコンテンツ ビューを示し、各ビューに含めることができる内容を示しています。 UI オートメーション ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。
コントロール ビュー | コンテンツ ビュー |
---|---|
|
適用不可。 (スクロール バー コントロールにはコンテンツがありません)。 |
スクロール バー コントロールには、0 から 5 個の子を含めることができます。 サブツリーには複数のボタン コントロールがあるため、要素は各項目に特定 のUIA_AutomationIdPropertyId 値を設定して、自動テスト ツールで検出できるようにする必要があります。
関連するプロパティ
次の表に、スクロール バー コントロールに特に関連する値または定義を持つ UI オートメーション プロパティを示します。 スクロール バー コントロールにコンテンツが含まれることはありません。その機能は 、スクロール するコンテナーでサポートされているスクロール コントロール パターンを介して公開されます。
UI オートメーションプロパティの詳細については、「UI オートメーション要素からプロパティを取得する」を参照してください。
UI Automation のプロパティ | 値 | メモ |
---|---|---|
UIA_AutomationIdPropertyId | 「ノート」を参照してください。 | このプロパティの値は、UI オートメーション ツリーの生ビュー内のすべてのピア要素間で一意である必要があります。 |
UIA_BoundingRectanglePropertyId | 「ノート」を参照してください。 | コントロール全体を格納する最も外側の四角形。 |
UIA_ClickablePointPropertyId | NaN | スクロール バー コントロールには、クリック可能なポイントはありません。 |
UIA_ControlTypePropertyId | ScrollBar | この値は、すべてのフレームワークで同じです。 スライダーとして機能するスクロール バーでは、 スライダー コントロールの種類を使用する必要があります。 |
UIA_IsContentElementPropertyId | FALSE | スクロール バー コントロールは、コンテンツ要素ではありません。 スクロール バーがスタンドアロン コントロールの場合は、Slider コントロールの種類を満たし、IUIAutomationElement::CurrentControlType (または CachedControlType) プロパティのUIA_SliderControlTypeIdを返す必要があります。 |
UIA_IsControlElementPropertyId | true | スクロール バー コントロールは、常にUI オートメーション ツリーのコントロール ビューに含まれます。 |
UIA_IsKeyboardFocusablePropertyId | 「ノート」を参照してください。 | コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。 スクロール バー コントロールがフォーカスを受け取ることはめったにありませんが、フォーカスは子ボタンや親指ではなく、スクロール バー コントロール自体に残る必要があります。 ユーザーは、上方向キーと下方向キー (または右方向キーと左方向キー) キー、またはページの上方向キーと PAGE ↓ キーを使用して、すべてのスクロール 操作を実行できる必要があります。 |
UIA_LabeledByPropertyId | NULL | スクロール バーには、ラベルはありません。 |
UIA_LocalizedControlTypePropertyId | 「ノート」を参照してください。 | ScrollBar コントロール型に対応するローカライズされた文字列。 既定値は、en-US または英語 (米国) の "スクロール バー" です。 |
UIA_NamePropertyId | NULL | スクロール バー コントロールにはコンテンツ要素がないため、 UIA_NamePropertyId プロパティを設定する必要はありません。 |
UIA_OrientationPropertyId | 「ノート」を参照してください。 | スクロール バー コントロールは、水平方向または垂直方向の向きを常に公開する必要があります。 |
必須のコントロール パターン
次の表に、すべてのスクロール バー コントロールでサポートするために必要なUI オートメーション コントロール パターンを示します。 コントロール パターンの詳細については、「 UI Automation Control Patterns Overview」を参照してください。
注意
スクロール バーをマウス操作のコントロールとしてのみ使用する場合、コントロール パターンはサポートされません。 アプリケーション内でスライダー コントロールとして使用する場合は、 Slider コントロールの種類を指定する必要があります。
コントロール パターン | サポート | Notes |
---|---|---|
IRangeValueProvider | 依存 | RangeValue コントロール パターンは、スクロール バーがあるコンテナーでスクロール コントロール パターンがサポートされていない場合にのみサポートする必要があります。 |
IScrollProvider | 行わない | スクロール コントロール パターンは、スクロール バーで直接サポートされることはありません。 |
必須イベント
次の表は、スクロール バー コントロールがサポートするために必要なUI オートメーション イベントの一覧です。 イベントの詳細については、「 UI Automation Events Overview」を参照してください。
UI オートメーション イベント | メモ |
---|---|
UIA_AutomationFocusChangedEventId | |
プロパティUIA_BoundingRectanglePropertyId 変更されたイベントです。 | |
プロパティUIA_IsEnabledPropertyId 変更されたイベントです。 | コントロールが IsEnabled プロパティをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティUIA_IsOffscreenPropertyId 変更されたイベントです。 | コントロールが IsOffscreen プロパティをサポートしている場合は、このイベントをサポートする必要があります。 |
UIA_StructureChangedEventId | |
プロパティUIA_RangeValueValuePropertyId 変更されたイベントです。 | コントロールが RangeValue コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
関連トピック