ITextRangeProvider::Move 方法 (uiautomationcore.h)
按指定的文本单位数向前或向后移动文本范围。
语法
HRESULT Move(
TextUnit unit,
[in] int count,
[out, retval] int *pRetVal
);
参数
unit
[in] count
类型: int
要移动的文本单位数。 正值将文本范围向前移动。
负值将文本范围向后移动。 零无效。
[out, retval] pRetVal
类型: int*
实际移动的文本单位数。 如果新文本范围终结点之一大于或小于 ITextProvider::D ocumentRange 方法检索到的终结点,则此值可能小于请求的数量。 如果导航在向后方向进行,则此值可以为负值。
返回值
类型: HRESULT
如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。
注解
ITextRangeProvider::Move 应仅移动文本范围以跨越文本的不同部分,不应以任何方式更改文本。
对于非退化 (非空) 文本范围, ITextRangeProvider::Move 应通过执行以下步骤规范化和移动文本范围。
- 将文本范围折叠为起始终结点处的退化 (空) 范围。
- 如有必要,将文档中生成的文本范围向后移动至请求的单位边界的开头。
- 按请求的文本单位边界数在文档中向前或向后移动文本范围。
- 通过将结束终结点向前移动一个请求的文本单元边界,从退化状态扩展文本范围。
对于退化的文本范围, ITextRangeProvider::Move 应仅按指定的文本单位数移动文本插入点。
移动文本范围时,提供程序应忽略文本中任何嵌入对象的边界。
ITextRangeProvider::Move 应同时遵循隐藏文本和可见文本。
如果基于文本的控件不支持 unit 参数指定的 文本单位,则提供程序应替换下一个更大的受支持文本单元。
文本单位的大小(从最小单位到最大)如下所示。
- 字符
- 格式
- Word
- 线
- Paragraph
- 页面
- 文档
单位为 时的范围行为TextUnit::Format
TextUnit::Format
作为 单位 值定位文本范围的边界,以基于共享文本属性 (格式) 范围内的文本扩展或移动范围。 但是,使用格式文本单元不应跨嵌入对象的边界(如图像或超链接)移动或扩展文本范围。 有关详细信息,请参阅UI 自动化文本单位或文本和 TextRange 控件模式。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2003 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | uiautomationcore.h (包括 UIAutomation.h) |
请参阅
概念性
引用
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈