ITextRangeProvider::GetEnclosingElement メソッド (uiautomationcore.h)
指定したテキスト範囲を囲む最も内側の要素を返します。
構文
HRESULT GetEnclosingElement(
[out, retval] IRawElementProviderSimple **pRetVal
);
パラメーター
[out, retval] pRetVal
種類: IRawElementProviderSimple**
指定した ITextRangeProvider を囲む最も内側の要素のUI オートメーション プロバイダー。
注意
外側の要素は、指定された ITextRangeProvider 以上にまたがることができます。
囲み要素が見つからない場合は、 ITextRangeProvider の ITextProvider 親が返されます。
このパラメーターは初期化せずに渡されます。
戻り値
型: HRESULT
このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。
解説
例
この例では、画像リンクを含むテキスト ストリームを示します。 リンクはイメージの子ですが、どちらも同じテキスト範囲にまたがり、テキスト ストリーム内の埋め込みオブジェクトとして公開されます。
Hello <Image Link> World
- イメージとリンクはどちらもストリームの ITextProvider の子孫であり、ITextProvider::RangeFromChild の呼び出しで childElement として指定することもできます。
- イメージまたはリンクを使用して ITextRangeProvider::RangeFromChild を呼び出すと、同じテキスト範囲 (Range1) が返されます。
- GetChildren はリンクを返しません。
- GetEnclosingElement は、テキスト範囲のイメージを返しません。
- Range1の GetEnclosingElement はリンクを返します。
- Range1 の GetChildren は子を返しません。
- ストリームの ITextProvider のテキスト範囲の GetEnclosingElement は、プロバイダーを返します。
- ストリームの ITextProvider のテキスト範囲の GetChildren は、画像のみを返します。
この例では、テキストで囲まれた 2 セルのテーブルを含むテキスト ストリームを示します。
テキストの開始
表のセル 1 表のセル 2 テキストの終了
- ケース 1: ストリームの ITextProvider とテキスト範囲全体
- テキスト範囲全体の ITextRangeProvider::GetEnclosingElement は、ストリームの ITextProvider を返します。
- GetChildren は、ストリームの ITextProvider のすべての子要素 (この場合は table 要素のみ) を返します。
- ケース 2: table 要素で ITextProvider::RangeFromChild を呼び出して取得したテキスト範囲:
- ITextRangeProvider::GetEnclosingElement はテーブル要素を返します。
- ITextRangeProvider::GetChildren は両方のテーブル セルを返します。
- ケース 3: 表セル 1 表セル 2 の視覚コンテンツにまたがるテキスト範囲:
- ITextRangeProvider::GetEnclosingElement はテーブル要素を返します。
- ITextRangeProvider::GetChildren は両方のテーブル セルを返します。
- ケース 4: 表のセル 1 のセルという単語にまたがるテキスト範囲:
- ITextRangeProvider::GetEnclosingElement は、最初のセル要素を返します。
- ITextRangeProvider::GetChildren は要素を返しません。
- ケース 5: 開始 (テーブルと最初のセル) の両方を表す縮退 (空) テキスト範囲:
- ITextRangeProvider::GetEnclosingElement は、最初のセル要素 (縮退範囲を含む範囲を持つ最も内側の要素) を返します。
- ITextRangeProvider::GetChildren は要素を返しません。
- ケース 1: ストリームの ITextProvider とテキスト範囲全体
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP [デスクトップ アプリ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | uiautomationcore.h (UIAutomation.h を含む) |
こちらもご覧ください
ITextProvider、ITextRangeProvider、ITextRangeProvider::GetChildren、UI オートメーション プロバイダーの概要