ITextStoreAnchor::GetAnchorFromPoint 方法 (textstor.h)
ITextStoreAnchor::GetAnchorFromPoint 方法将屏幕坐标中的点转换为定位在相应位置的定位点。
语法
HRESULT GetAnchorFromPoint(
[in] TsViewCookie vcView,
[in] const POINT *ptScreen,
[in] DWORD dwFlags,
[out] IAnchor **ppaSite
);
参数
[in] vcView
指定上下文视图。
[in] ptScreen
指向 POINT 结构的指针,其中包含点的屏幕坐标。
[in] dwFlags
根据相对于字符边界框的点的屏幕坐标指定要返回的定位点位置。 默认情况下,返回的定位点位置是包含点的屏幕坐标的字符边界框。 如果该点位于字符边界框之外,则 该方法返回 NULL 或 TF_E_INVALIDPOINT。 此参数的其他位标志如下所示。
位标志可以组合使用。
值 | 含义 |
---|---|
|
如果点的屏幕坐标包含在字符边界框中,则会在最接近点的屏幕坐标的边界边缘返回定位点。 |
|
如果点的屏幕坐标不包含在字符边界框中,则返回位于最近字符位置的定位点。 |
[out] ppaSite
指向与屏幕坐标 ptScreen 相对应的位置的定位点对象的指针。
返回值
此方法可以返回其中一个值。
值 | 说明 |
---|---|
|
方法成功。 |
|
方法失败。 |
|
一个或多个输入参数无效。 |
|
在指定位置实例化定位点的尝试失败。 |
|
ptScreen 参数不在任何字符的边界框中。 |
|
应用程序尚未计算文本布局。 |
注解
默认情况下,点 1 屏幕坐标会导致定位点 ppaSite (字符位置) 偏移量为 0,或者如果 dwFlags 参数设置为 GXFPF_NEAREST 因为点 1 屏幕坐标位于字符位置 0 的字符边界框中。 如果 dwFlags 参数设置为点 1 的 GXFPF_ROUND_NEAREST,则定位点偏移量为 1,因为点 1 屏幕坐标最接近范围位置 1。 范围位置 1 是字符位置 1 的起始范围位置。对于点 2 屏幕坐标,方法默认返回 TF_E_INVALIDPOINT ,或者如果 dwFlags 参数设置为 GXFPF_NEAREST ,因为点 2 屏幕坐标在字符边界框之外。 如果 dwFlags 参数设置为 GXFPF_ROUND_NEAREST,则点 2 屏幕坐标会导致定位点偏移量为 1,因为与点 2 屏幕坐标最近的字符位置是字符位置 1。
第 1 点
- Default-- 定位点偏移量 = 0 --屏幕坐标点位于字符位置 0 的字符边界框中。
- -- GXFPF_ROUND_NEAREST定位点偏移量 = 1 --点的屏幕坐标最接近范围位置 1,这是字符位置 1 的起始范围位置。
- -- GXFPF_NEAREST定位点偏移量 = 0 --发生默认行为是因为点位于字符位置 0 的字符边界框中。
- Default-- hr = TF_E_INVALIDPOINT --点的屏幕坐标位于字符边界框之外。
- GXFPF_ROUND_NEAREST-- 小时 = TF_E_INVALIDPOINT --发生默认行为是因为点的屏幕坐标在字符边界框之外。
- GXFPF_NEAREST -- 定位点偏移量 = 1 --离点的屏幕坐标最近的字符位置是字符位置 1。
要求
最低受支持的客户端 | Windows 2000 专业版 [桌面应用 |UWP 应用] |
最低受支持的服务器 | Windows 2000 Server [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | textstor.h |
DLL | Msctf.dll |
可再发行组件 | Windows 2000 专业版上的 TSF 1.0 |