IAnchor::Shift 方法 (textstor.h)
IAnchor::Shift 方法在文本流中向前或向后移动定位点。
语法
HRESULT Shift(
[in] DWORD dwFlags,
[in] LONG cchReq,
[out] LONG *pcch,
[in] IAnchor *paHaltAnchor
);
参数
[in] dwFlags
用于避免定位点定位的位字段。
值 | 含义 |
---|---|
|
定位点未移动。 如果未 (dwFlags = 0) 设置标志,则定位点将按其他参数设置指定移动。 |
[in] cchReq
在文本流中移动定位点的字符数。
[out] pcch
文本流中移动的实际字符数。 如果 pcch 失败,方法会将 pcch 设置为零。
[in] paHaltAnchor
对阻止移动的定位点的引用。 设置为 NULL 以避免阻止班次。
返回值
此方法可以返回其中一个值。
值 | 说明 |
---|---|
|
方法成功。 |
|
班次失败。 |
|
输入参数值无效。 |
|
此方法中未实现 dwFlags 参数值。 |
注解
cchReq 和 pcch 参数可以是负数,表示文本流中的向后移动,也可以是正的,表示向前移动。 如果遇到文档的开头或结尾、遇到区域边界,或者 paHaltAnchor 收到阻止移动的定位点,则实际移动的字符数可能小于 cchReq。
如果 paHaltAnchor 收到阻止班次的定位点,应用程序将截断 paHaltAnchor 占据的位置的移位。如果 paHaltAnchor 不在班次涵盖的文本范围内,则它与班次无关,将被忽略。
例如,如果 paHaltAnchor 引用的定位点位于流中的定位点前 8 个字符,并且客户端调用 Shift (0, 10, pcch, paHaltAnchor) ,则在退出时,定位点将仅移动 8 个字符。 如果 paHaltAnchor 引用的定位点等于要移动的当前定位点,则 Shift 将成功返回,而无需移动定位点。 在这种情况下 ,pcch 将为 0。
定位点移动始终被区域边界阻止,就像遇到文档的开头或结尾一样。 在退出时,实际移位 pcch 的绝对值比请求的移位 cchReq 小,从而指示这一点。 在这种情况下,客户端可以使用 IAnchor::ShiftRegion 将定位点移动到相邻区域。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | textstor.h |
DLL | Msctf.dll |
可再发行组件 | Windows 2000 专业版上的 TSF 1.0 |