L_AnnHitTest

# include“l_bitmap.h”

L_LTANN_APIL_INT如此,L_AnnHitTest (hObject puResult phObjectHit, pHitTestInfo, uStructSize)

这个函数获取句柄的注释对象位于一个指定点。(如果对象重叠,它前面的物体。)和额外的信息注释对象处理,如果处理一个默认的或用户定义的处理。

参数

HANNOBJECThObject

处理的容器对象集的范围搜索。

LPPOINT如此之

指针结构,指定点测试。坐标是相对于窗口的客户区有关。

L_UINT* puResult

注释对象上的位置被发现在指定点。可能的值是:

ANNHIT_NONE [0]
ANNHIT_BODY [1]
ANNHIT_HANDLE [2]
ANNHIT_NAME [3]
ANNHIT_USER_HANDLE [4]
ANNHIT_ROTATE_HANDLE [5]
ANNHIT_MULTISELECT_HANDLE [6]
ANNHIT_MULTISELECT_ROTATE_HANDLE [7]
ANNHIT_MULTISELECT_BODY [8]

如果更新(* puResult) ANNHIT_HANDLE或ANNHIT_USER_HANDLE,pHitTestInfo包含额外的信息注释对象句柄。例如,如果ANNHIT_ROTATE_HANDLE (* puResult), pHitTestInfo - > nHandleID将ROTATE_HANDLE_CENTER_ID[100]或ROTATE_HANDLE_GRIPPER_ID[101]确定旋转处理被击中。

pHANNOBJECTphObjectHit

变量的地址更新与处理注释对象在指定的点。

pANNHITTESTINFOpHitTestInfo

指针指向一个ANNHITTESTINFO每当(*结构提供了冲击测试信息puResult)是与ANNHIT_HANDLE或ANNHIT_USER_HANDLE更新。

L_UINTuStructSize

结构大小的字节,指向pHitTestInfo版本控制。使用sizeof (ANNHITTESTINFO)。

返回

价值 意义
成功 函数是成功的。
< 1 一个错误发生。指返回代码

评论

在调用这个函数之前,你必须声明一个变量的数据类型HANNOBJECT。然后您可以通过变量的地址phObjectHit参数,该函数将更新的处理对象位于指定的点。

必需的dll和库

平台

x64 Win32。

另请参阅

功能

主题

例子

这个示例使用调用者的鼠标坐标得到处理
注释对象在指定的坐标。
的点击注释显示在输出窗口。
如果达到测试的结果是用户处理,显示额外的信息处理。

L_INT AnnHitTestExample (HANNOBJECT hContainer,点ptPointToTest){L_TCHAR szMsg [200];L_TCHAR szHitTestInfo [200];ANNHITTESTINFO HitTestInfo;L_TCHAR * pszResult =文本(”“);L_INT nRet;/ /这个函数决定了哪些你有点击注释对象。HANNOBJECT hObject;/ /局部变量的注释对象L_UINT uResult;/ /测试的结果/ /得到对象在指定点memset (&HitTestInfo 0运算符(ANNHITTESTINFO));HitTestInfo。uStructSize=运算符(ANNHITTESTINFO);nRet = L_AnnHitTest (hContainer &ptPointToTest、&uResult hobject, &HitTestInfo,运算符(ANNHITTESTINFO));如果(nRet ! =成功)返回nRet;开关(uResult){情况下ANNHIT_NONE:pszResult =文本(“ANNHIT_NONE”);打破;情况下ANNHIT_BODY:pszResult =文本(“ANNHIT_BODY”);打破;情况下ANNHIT_NAME:pszResult =文本(“ANNHIT_NAME”);打破;情况下ANNHIT_HANDLE:wsprintf (szHitTestInfo文本(“ANNHIT_HANDLE nHandleIndex [% d], nHandleID [% d]”),HitTestInfo。nHandleIndex HitTestInfo.nHandleID);pszResult = szHitTestInfo;打破;情况下ANNHIT_USER_HANDLE:wsprintf (szHitTestInfo文本(“ANNHIT_USER_HANDLE nHandleIndex [% d], nHandleID [% d]”),HitTestInfo。nHandleIndex HitTestInfo.nHandleID);pszResult = szHitTestInfo;打破;}wsprintf (szMsg文本(“(x %) % s \ n”)、hObject pszResult);OutputDebugString (szMsg);返回成功;}

LEADTOOLS光栅成像C API的帮助
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2021领先的技术公司。保留所有权利。