ITextRangeProvider::MoveEndpointByUnit 方法(uiautomationcore.h)
将文本范围的一个终结点移动到文档范围内指定数量的 TextUnit 单位。
语法
HRESULT MoveEndpointByUnit(
[in] TextPatternRangeEndpoint endpoint,
[in] TextUnit unit,
[in] int count,
[out, retval] int *pRetVal
);
参数
[in] endpoint
类型:TextPatternRangeEndpoint
要移动的终结点。
[in] unit
类型:TextUnit
文本单元的类型,如字符、单词、段落等。
[in] count
类型:int
要移动的单位数。 正值将终结点向前移动。 负值向后移动。 值 0 无效。
[out, retval] pRetVal
类型:int*
接收实际移动的单位数,如果移动终结点进入文档的开头或结尾,则其数量可能小于请求的数量。
返回值
类型:HRESULT
如果此方法成功,则返回 S_OK。 否则,它将返回 HRESULT 错误代码。
言论
终结点 向前或向后移动(如指定)到下一个可用单位边界。 如果原始 终结点 位于指定文本单元的边界,终结点 将移动到下一个可用文本单元边界,如下图所示。
文本范围的终结点如果移动 终结点 跨越同一文本范围的另一个 终结点,另一个 终结点 也会移动,从而导致退化的范围并确保 终结点 的正确排序(也就是说,开始始终小于或等于结束)。如果控件不支持给定的文本单元,ITextRangeProvider::MoveEndpointByUnit 弃用到下一个受支持的文本单元。
此处列出了从最小单位到最大单位的顺序。
- 字符
- 格式
- Word
- 行
- 段落
- 页面
- 文档
当 单元TextUnit::Format
时,范围行为
TextUnit::Format
作为一个 单元 值将文本范围的边界定位为根据区域内文本的共享文本属性(格式)展开或移动范围。 但是,使用格式文本单元不应在嵌入对象的边界(如图像或超链接)之间移动或扩展文本范围。 有关详细信息,请参阅 UI 自动化文本单元 或 文本和 TextRange 控件模式。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows XP [桌面应用 |UWP 应用] |
支持的最低服务器 | Windows Server 2003 [桌面应用 |UWP 应用] |
目标平台 | 窗户 |
标头 | uiautomationcore.h (包括 UIAutomation.h) |
另请参阅
概念
参考