イメージ コントロールの種類

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

アイコン、情報グラフィックス、グラフとして使用されるイメージ コントロールは、 イメージ コントロールの種類をサポートします。 背景または透かしの画像として使用されるコントロールでは、 イメージ コントロールの種類はサポートされません。

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

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

一般的なツリー構造

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

コントロール ビュー コンテンツ ビュー
Image イメージ ( Automation 要素プロパティ識別子 プロパティの値に基づいて、イメージに情報が含まれているかどうかによって異なります)

関連するプロパティ

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

UI Automation のプロパティ Notes
UIA_AutomationIdPropertyId 「ノート」を参照してください。 このプロパティの値は、UI オートメーション ツリーの生ビュー内のすべてのピア要素間で一意である必要があります。
UIA_BoundingRectanglePropertyId 「ノート」を参照してください。 コントロール全体を格納する最も外側の四角形。
UIA_ClickablePointPropertyId 「ノート」を参照してください。 イメージ コントロールのクリック可能なポイントは、イメージ コントロールの外接する四角形内のポイントである必要があります。
UIA_ControlTypePropertyId イメージ
UIA_HelpTextPropertyId 「ノート」を参照してください。 HelpText プロパティは、イメージに関連付けられたコントロールまたはその他のツールヒント情報の実際の外観を説明するローカライズされた文字列を公開します。 このプロパティは、画像コントロールに関する詳細情報を伝えるために長い説明が必要な場合にサポートする必要があります (たとえば、画像が複雑なグラフや図の場合)。 このプロパティは、HTML LongDesc タグとスケーラブル ベクター グラフィックス (SVG) Desc タグに マップされます。 イメージ コントロールを使用する開発者は、コントロールに視覚的な説明を設定できるようにするために、プロパティをサポートする必要があります。 このプロパティは、UI オートメーション VisualDescription プロパティにマップする必要があります。
UIA_IsContentElementPropertyId 「ノート」を参照してください。 エンド ユーザーに対してまだ公開されていない有用な情報がイメージ コントロールに含まれている場合は、それを UI オートメーション ツリーのコンテンツ ビューに含める必要があります。
UIA_IsControlElementPropertyId true イメージ コントロールは、UI オートメーション ツリーのコントロール ビューに常に含まれます。
UIA_IsKeyboardFocusablePropertyId 「ノート」を参照してください。 コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。
UIA_ItemStatusPropertyId 「ノート」を参照してください。 イメージ コントロールが画面上の特定の項目に関する状態情報を表している場合は、そのコントロールを対象の項目に含める必要があります。 イメージがアイテム内に含まれている場合、アイテムは status プロパティをサポートし、状態が変更されたときに適切な通知を生成する必要があります。 イメージがスタンドアロン コントロールであり、状態を示している場合は、このプロパティをサポートする必要があります。
UIA_LabeledByPropertyId 「ノート」を参照してください。 静的テキスト ラベルがある場合、このプロパティは、そのコントロールへの参照を公開する必要があります。
UIA_LocalizedControlTypePropertyId 「ノート」を参照してください。 Image コントロールの種類に対応するローカライズされた文字列。 既定値は、en-US または英語 (米国) の "image" です。
UIA_NamePropertyId 「ノート」を参照してください。 Name プロパティは、情報を含むすべてのイメージ コントロールに対して公開する必要があります。 この情報にプログラムでアクセスするには、グラフィックと等価なテキストを指定する必要があります。 イメージ コントロールが純粋に装飾されている場合は、UI オートメーション ツリーのコントロール ビューにのみ表示する必要があり、名前を付ける必要はありません (「解説」を参照)。 UI フレームワークは、イメージ上の ALT (代替テキスト) プロパティをサポートする必要があります。これはそのフレームワークの内部から設定できます。 次いで、このプロパティは、UI オートメーションの Name プロパティにマップされます。

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

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

コントロール パターン サポート Notes
IGridItemProvider 依存 コントロールがグリッド コンテナー内にある場合、イメージ コントロールは GridItem コントロール パターンをサポートします。
IInvokeProvider 行わない イメージ コントロールがクリック可能なオブジェクトの場合、コントロールは、ボタン コントロールの種類などの Invoke コントロール パターンをサポートするコントロールの種類をサポートする必要があります。 複数のクリック可能なオブジェクトを含むイメージ オブジェクトの場合、要素 (イメージ コントロールの種類) は、UI オートメーション ツリーで子リンク (ハイパーリンク コントロールの種類) をホストできます。
ISelectionItemProvider 行わない イメージ コントロールは SelectionItem コントロール パターンをサポートしないでください。 イメージが、イメージ アイコンをコンテンツとして含むボタンなど、選択可能なコンテナーの一部である場合、そのコンテナーは、その中のイメージではなくパターンをサポートします。
ITableItemProvider 依存 コントロールがヘッダー コントロールを持つコンテナー内にある場合、イメージ コントロールは TableItem コントロール パターンをサポートします。

必須イベント

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

UI オートメーション イベント Notes
UIA_AutomationFocusChangedEventId
プロパティ変更イベントUIA_BoundingRectanglePropertyId
プロパティ変更イベントUIA_IsEnabledPropertyId コントロールが IsEnabled プロパティをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベントUIA_IsOffscreenPropertyId コントロールが IsOffscreen プロパティをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベントUIA_ItemStatusPropertyIdします。 コントロールが ItemStatus プロパティをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベントをUIA_NamePropertyIdします。
UIA_StructureChangedEventId

解説

World Wide Web Consortium (W3C) では、ページのコンテンツに情報を追加しない装飾イメージを定義します。 詳細については、 装飾画像に関する W3C トピックを参照してください。

UI オートメーションに関して:

  • 画像が純粋に装飾的であり、対話型ではなく、情報を伝達しない場合、画像は次のようになります。
    • UIA ツリーに存在する可能性がある、または存在しない可能性がある
    • UIA 未加工ビューに表示される場合とない場合があります
    • UIA コントロール ビューに含めてはいけません
    • コンテンツ ビューに含めてはいけません
    • 名前を持つ場合とない場合があります
  • 画像が情報を伝達するが、同じ情報を提供する明確に関連付けられたテキスト (左向きの三角形のグラフィックとテキスト "play" を含む再生ボタンなど) がある場合、画像は装飾と見なされ、画像は次のようになります。
    • 未加工のビューに存在する必要があります
    • コントロール ビューに存在する必要があります
    • コンテンツ ビューに含めてはいけません
    • Name プロパティに値が含まれている場合とない場合があります。
    • 画像の意味も伝えるテキストは、コンテンツ ビューに含まれている必要があります
  • 画像が有益であり、関連付けられたテキストによって提供されない詳細を伝える場合、画像は次のようになります。
    • 未加工のビューに存在する必要があります
    • コントロール ビューに存在する必要があります
    • コンテンツ ビューに存在する必要があります
    • イメージとその意味を説明する名前値を指定する必要があります

概念