IOleControlSite::TransformCoords 方法 (ocidl.h)
将 OLE) 中的标准单位 (表示的 HIMETRIC 单位表示的坐标转换为容器指定的单位。
语法
HRESULT TransformCoords(
[in, out] POINTL *pPtlHimetric,
[in, out] POINTF *pPtfContainer,
[in] DWORD dwFlags
);
parameters
[in, out] pPtlHimetric
包含以 HIMETRIC 单位表示的坐标的 POINTL 结构的地址。 当 dwFlags 包含XFORMCOORDS_HIMETRICTOCONTAINER时,这是一个 [in] 参数;它是具有 XFORMCOORDS_CONTAINERTOHIMETRIC 的 [out] 参数。 在后一种情况下,内容在错误时未定义。
[in, out] pPtfContainer
接收转换坐标的调用方分配的 POINTF 结构的地址。 当 dwFlags 包含XFORMCOORDS_CONTAINERTOHIMETRIC时,这是一个 [in] 参数;它是具有 XFORMCOORDS_HIMETRICTOCONTAINER 的 [out] 参数。 在后一种情况下,内容在错误时未定义。
[in] dwFlags
指示要执行的确切转换的标志。 此参数可以是以下值的任意组合,但如所示除外。
返回值
此方法可以返回E_INVALIDARG和E_UNEXPECTED的标准返回值,以及以下值。
返回代码 | 说明 |
---|---|
|
该方法已成功完成。 |
|
容器不需要任何特殊的坐标转换。 容器在 HIMETRIC 中完全处理。 |
|
pPtlHimetric 或 pPtfContainer 中的地址无效。 例如,它可能为 NULL。 |
注解
当控件必须向事件或其他自定义调用中的容器发送坐标,或者控件具有需要转换为 HIMETRIC 单位的容器坐标时,会使用此方法。
要求
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | ocidl.h |