IUIAutomationTextRange::ExpandToEnclosingUnit 方法 (uiautomationclient.h)

按指定的文本单位规范化文本范围。 如果范围小于指定的单位,则扩大;如果范围长于指定单位,则缩短范围。

语法

HRESULT ExpandToEnclosingUnit(
  [in] TextUnit textUnit
);

参数

[in] textUnit

类型: TextUnit

文本单位,如行或段落。

返回值

类型: HRESULT

如果该方法成功,则返回 S_OK。 否则,它将返回 HRESULT 错误代码。

备注

客户端应用程序(如屏幕阅读器)使用此方法检索插入点或插入点位置处的完整单词、句子或段落。

尽管具有名称,但 ExpandToEnclosingUnit 方法不一定扩展文本范围。 相反,它通过移动终结点使文本范围包含指定的文本单位来“规范化”文本范围。 如果范围小于指定的单位,则扩大;如果范围长于指定单位,则缩短范围。 如果范围已经是指定单位的确切数量,则保持不变。 下图显示了 ExpandToEnclosingUnit 如何通过移动范围的终结点来规范化文本范围。

显示 ExpandToEnclosingUnit 之前和之后的终结点的关系图

显示 ExpandToEnclosingUnit 之前和之后的终结点的关系图

如果控件不支持指定的文本单位,ExpandToEnclosingUnit 默认为支持的下一个最大文本单位。

从最小单位到最大单位的顺序如下所示:

  • 字符
  • 格式
  • Word
  • 线
  • Paragraph
  • 页面
  • 文档

ExpandToEnclosingUnit 同时遵循可见文本和隐藏文本。

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

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

要求

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

另请参阅

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