コントロールの種類の編集
このトピックでは、Edit コントロールの種類に対する Microsoft UI オートメーションのサポートについて説明します。
編集コントロールを使用すると、ユーザーは豊富な書式設定をサポートせずに単純なテキスト行を表示および編集できます。
次のセクションでは、編集コントロールの種類に必要な UI オートメーション ツリー構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI オートメーションの要件は、UI フレームワーク/プラットフォームがコントロールの種類とコントロール パターンに対する UI オートメーションのサポートを統合するすべての編集コントロールに適用されます。
このトピックには、次のセクションが含まれています。
- 一般的なツリー構造の
- 関連するプロパティ を する
- 必要なコントロール パターンの
- 必要なイベント を する
- 備考
- 関連トピック
一般的なツリー構造
次の表は、編集コントロールに関連する UI オートメーション ツリーの一般的なコントロールとコンテンツ ビューを示し、各ビューに含めることができる内容を示しています。 UI オートメーション ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。
コントロール ビュー | コンテンツ ビュー |
---|---|
|
|
Edit コントロール型を実装するコントロールは、単一行コントロールであるため、UI オートメーション ツリーのコントロール ビューには常にスクロール バーが 0 個あります。 一部のレイアウト シナリオでは、1 行のテキストが折り返される場合があります。 編集 コントロールの種類は、少量のテキストのみを対象としています。
関連するプロパティ
次の表に、編集コントロールに特に関連する値または定義を持つ UI オートメーション プロパティを示します。 UI オートメーション プロパティの詳細については、「UI オートメーション要素からプロパティを取得する」を参照してください。
UI オートメーション プロパティ | 価値 | 筆記 |
---|---|---|
UIA_AutomationIdPropertyId | ノートを参照してください。 | このプロパティの値は、UI オートメーション ツリーの生ビュー内のすべてのピア要素で一意である必要があります。 |
UIA_BoundingRectanglePropertyId | ノートを参照してください。 | コントロール全体を含む最も外側の四角形。 |
UIA_ClickablePointPropertyId | ノートを参照してください。 | 編集コントロールには、ユーザーがマウスをクリックしたときにコントロールの編集部分に入力フォーカスを与えるクリック可能なポイントが必要です。 |
UIA_ControlTypePropertyId | 編集 | |
UIA_IsContentElementPropertyId | TRUE | 編集コントロールは、常に UI オートメーション ツリーのコンテンツ ビューに含まれます。 |
UIA_IsControlElementPropertyId | TRUE | 編集コントロールは、常に UI オートメーション ツリーのコントロール ビューに含まれます。 |
UIA_IsKeyboardFocusablePropertyId | ノートを参照してください。 | コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。 |
UIA_IsPasswordPropertyId | ノートを参照してください。 | パスワードを含む編集コントロール TRUE に設定する必要があります。 編集コントロールにパスワードの内容が含まれている場合は、スクリーン リーダーによってこのプロパティを使用して、ユーザーが入力するときにキーストロークを読み取る必要があるかどうかを判断できます。 |
UIA_LabeledByPropertyId | ノートを参照してください。 | コントロールに関連付けられている静的テキスト ラベルがある場合、このプロパティは、そのコントロールへの参照を公開する必要があります。 テキスト コントロールが別のコントロールのサブコンポーネントである場合、LabeledBy プロパティは設定されません。 |
UIA_LocalizedControlTypePropertyId | ノートを参照してください。 | Edit コントロール型に対応するローカライズされた文字列。 既定値は、en-US または英語 (米国) の "編集" です。 |
UIA_NamePropertyId | ノートを参照してください。 | 通常、編集コントロールの名前は静的テキスト ラベルから生成されます。 静的テキスト ラベルがない場合は、アプリケーション開発者が Name のプロパティ値を割り当てる必要があります。 Name プロパティには、編集コントロールのテキストコンテンツを含めてはなりません。 |
必要なコントロール パターン
次の表に、編集コントロールでサポートする必要がある UI オートメーション コントロール パターンの一覧を示します。 コントロール パターンの詳細については、「UI オートメーション コントロール パターンの概要」を参照してください。
Control Pattern/Pattern プロパティ | サポート/値 | 筆記 |
---|---|---|
IRangeValueProviderの | 依存 | 数値範囲を取得するすべての編集コントロールは、RangeValue コントロール パターンを公開する必要があります。 |
最小 | ノートを参照してください。 | このプロパティは、編集コントロールの内容を設定できる最小の値である必要があります。 |
最大 | ノートを参照してください。 | このプロパティは、編集コントロールの内容を設定できる最大値である必要があります。 |
SmallChange | ノートを参照してください。 | このプロパティは、値を設定できる小数点以下の桁数を示す必要があります。 編集コントロールが整数のみを受け取る場合、SmallChange プロパティの値 は 1 である必要があります。 編集コントロールの範囲が 1.0 から 2.0 の場合、SmallChange プロパティの値は 0.1 である必要があります。 編集コントロールの範囲が 1.00 から 2.00 の場合、SmallChange プロパティの値は 0.001 である必要があります。 |
LargeChange | NULL | このプロパティは、編集コントロールで公開する必要はありません。 |
値の | ノートを参照してください。 | このプロパティは、編集コントロールの数値の内容を示します。 最小および最大 プロパティで指定された範囲内で UI オートメーション クライアントによってより正確な値が設定されている場合、Value プロパティは、最も近い値に自動的に丸められます。 |
ITextProviderの | 必須 | すべての編集コントロールは、支援技術クライアントで常に詳細情報を使用できる必要があるため、テキスト コントロール パターンをサポートする必要があります。 |
IValueProviderの | 依存 | 文字列を受け取るすべての編集コントロールは、値 コントロール パターンを公開する必要があります。 |
IsReadOnlyの | ノートを参照してください。 | このプロパティは、コントロールがプログラムによって設定できる値を持っているか、ユーザーが編集できるかを示すために設定する必要があります。 |
値の | ノートを参照してください。 | このプロパティには、編集コントロールのテキストコンテンツが含まれています。 UIA_IsPasswordPropertyId プロパティが TRUE に設定されている場合は、Value プロパティに対してクエリを実行するとエラーが返される必要があります。 |
必要なイベント
次の表に、コントロールを編集する必要がある UI オートメーション イベントを示します。 イベントの詳細については、「UI オートメーション イベントの概要」を参照してください。
UI オートメーション イベント | 筆記 |
---|---|
UIA_AutomationFocusChangedEventId | |
プロパティ変更イベント UIA_BoundingRectanglePropertyId します。 | |
プロパティ変更イベントを UIA_IsEnabledPropertyId します。 | コントロールが IsEnabled プロパティをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_IsOffscreenPropertyId します。 | コントロールが IsOffscreen プロパティをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_NamePropertyId します。 | |
プロパティ UIA_RangeValueValuePropertyId 変更されたイベントです。 | コントロールが RangeValue コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_ScrollHorizontallyScrollablePropertyId します。 | エディット コントロールでは、Scroll コントロール パターンはサポートされません。 |
プロパティ変更イベント UIA_ScrollHorizontalScrollPercentPropertyId します。 | エディット コントロールでは、Scroll コントロール パターンはサポートされません。 |
プロパティ変更イベント UIA_ScrollHorizontalViewSizePropertyId します。 | エディット コントロールでは、Scroll コントロール パターンはサポートされません。 |
プロパティ変更イベント UIA_ScrollVerticallyScrollablePropertyId します。 | エディット コントロールでは、Scroll コントロール パターンはサポートされません。 |
プロパティ変更イベント UIA_ScrollVerticalScrollPercentPropertyId します。 | エディット コントロールでは、Scroll コントロール パターンはサポートされません。 |
プロパティ変更イベント UIA_ScrollVerticalViewSizePropertyId します。 | エディット コントロールでは、Scroll コントロール パターンはサポートされません。 |
UIA_StructureChangedEventId | |
UIA_Text_TextChangedEventId | コントロールが Text コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
UIA_Text_TextSelectionChangedEventId | コントロールが Text コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_ValueValuePropertyId します。 | コントロールが Value コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
備考
編集コントロールは、テキストの選択または編集をサポートしない読み取り専用のテキスト フィールドとして使用できます。 このような編集コントロールは、特定の名前と値を持つフィールド オブジェクトとして動作します。
編集コントロールにプレースホルダー テキスト (キュー バナーなど) が含まれている場合は、テキストをユーザーが編集してプレースホルダー テキストとして再利用できない限り、テキストを HelpText プロパティとして使用する必要があります。 たとえば、新しいタブを開くと、Windows Internet Explorer のアドレス バーに "about:Tabs" というテキストが含まれます。 ユーザーが使用または編集できるプログラムによるアドレスであるため、これは HelpText ではありません。
関連トピック