IUIAutomationTextRange::MoveEndpointByUnit メソッド (uiautomationclient.h)

テキスト範囲の 1 つのエンドポイントを、指定されたテキスト単位数の分、ドキュメントの範囲内で移動します。

構文

HRESULT MoveEndpointByUnit(
  [in]          TextPatternRangeEndpoint endpoint,
  [in]          TextUnit                 unit,
  [in]          int                      count,
  [out, retval] int                      *moved
);

パラメーター

[in] endpoint

型: TextPatternRangeEndpoint

移動するエンドポイント (開始または終了) を指定する値。

[in] unit

型: TextUnit

行や段落など、移動するテキスト単位を指定する値。

[in] count

型: int

移動する単位の数。 正の数はエンドポイントを前方に移動します。 負の数は後方に移動します。 0 の場合は移動されません。

[out, retval] moved

型: int*

実際に移動された単位数を受け取ります。 エンドポイントの移動がドキュメントの先頭または末尾に実行される場合、この値は要求された数より小さくすることができます。

戻り値

型: HRESULT

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

注釈

エンドポイントは、指定に応じて、次に使用可能な単位境界に前方または後方に移動されます。 元の エンドポイント が指定したテキスト単位の境界にあった場合、次の図に示すように、 エンドポイント は次に使用可能なテキスト単位の境界に移動されます。

テキスト範囲のエンドポイントの移動を示す図 移動する エンドポイント が同じテキスト範囲の他の エンドポイント と交差する場合は、もう一方の エンドポイント も移動され、結果として低次元の範囲になり、 エンドポイント の正しい順序が保証されます (つまり、開始が常に終了以下であること)。

MoveEndpointByUnit は、指定されたテキストユニットがコントロールでサポートされていない場合、サポートされている次のテキストユニットまで非推奨になります。

最小単位から最大までの順序を次に示します。

  • 文字
  • Format
  • Word
  • Paragraph
  • ページ
  • Document

unit が の場合の範囲の動作TextUnit::Format

TextUnit::Formatを単位値として、テキスト範囲の境界を配置して、範囲内のテキストの共有テキスト属性 (書式) に基づいて範囲を展開または移動します。 ただし、テキストの書式設定単位を使用すると、画像やハイパーリンクなど、埋め込みオブジェクトの境界を越えてテキスト範囲を移動または展開することはできません。 詳細については、「テキスト単位のUI オートメーション」または「テキストコンテンツのUI オートメーションサポート」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 7、Windows Vista SP2 と Windows Vista 用プラットフォーム更新プログラム、WINDOWS XP SP3 と Windows Vista 用プラットフォーム更新プログラム [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2、Windows Server 2008 SP2 および Windows Server 2008 用プラットフォーム更新プログラム、WINDOWS Server 2003 SP2 および Windows Server 2008 用プラットフォーム更新プログラム [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー uiautomationclient.h (UIAutomation.h を含む)

こちらもご覧ください

IUIAutomationTextRange

テキスト コンテンツのUI オートメーションサポート