IUIAutomationTextRange::MoveEndpointByUnit 方法 (uiautomationclient.h)

在文档范围内将文本范围的一个端点移动指定数量的文本单位。

语法

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 将弃用到下一个受支持的文本单元。

此处列出了从最小单位到最大单位的顺序。

  • 字符
  • 格式
  • Word
  • 线条
  • Paragraph
  • Page
  • Document

单位为 时的范围行为TextUnit::Format

TextUnit::Format 作为 单位 值,根据共享文本属性 (格式) 范围内的文本,定位文本范围的边界以展开或移动范围。 但是,使用格式文本单元不会跨嵌入对象的边界(如图像或超链接)移动或展开文本范围。 有关详细信息,请参阅UI 自动化文本单位UI 自动化文本内容支持

要求

要求
最低受支持的客户端 Windows 7、带 SP2 的 Windows Vista 和适用于 Windows Vista 的平台更新、带 SP3 的 Windows XP 和适用于 Windows Vista 的平台更新 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2、带 SP2 的 Windows Server 2008 和适用于 Windows Server 2008 的平台更新、带 SP2 的 Windows Server 2003 和适用于 Windows Server 2008 的平台更新 [仅限桌面应用]
目标平台 Windows
标头 uiautomationclient.h (包括 UIAutomation.h)

另请参阅

IUIAutomationTextRange

对文本内容的UI 自动化支持