# include“l_bitmap.h”
L_LTIVW_APIL_INTEXT_FUNCTIONl_discontainergetannotationcallback (hcellwind, ppfnCallBack, ppUserData)
获取当前注释回调函数以及使用。设置的用户数据L_DispContainerSetAnnotationCallBack.
表示医疗查看器单元格的窗口句柄。
指向回调函数指针的指针,该回调函数将被更新为使用的最后一个注释集L_DispContainerSetAnnotationCallBack.
要用与标记回调关联的用户定义数据的值更新的Void指针。如果您对用户定义的数据不感兴趣,则为该参数传递NULL。
价值 | 意义 |
---|---|
成功 | 函数运行成功。 |
< 1 | 发生错误。指返回代码. |
所需的dll和库
此示例将在用户单击矩形、椭圆或hilite注释后将它们转换为区域。
L_INT EXT_CALLBACK注释
L_UINT uMessage,
L_INT nX,
L_INT纽约,
L_INT nCellIndex,
L_INT nSubCellIndex,
L_VOID * userdata)
{
UNREFERENCED_PARAMETER (nX);
UNREFERENCED_PARAMETER(纽约);
UNREFERENCED_PARAMETER (nCellIndex);
UNREFERENCED_PARAMETER (uMessage);
UNREFERENCED_PARAMETER (pUserData);
DISPCONTAINERANNATTRIBS AnnAttrib;
AnnAttrib。uStructSize =运算符(DISPCONTAINERANNATTRIBS);
l_discontainergetselectedannotationattributes (hcellwind, nSubCellIndex, &AnnAttrib, 0);
开关(AnnAttrib.uType)
{
情况下ANNOBJECT_RECT:
情况下ANNOBJECT_ELLIPSE:
情况下ANNOBJECT_HILITE:
l_discontaineranntorgn (hcellwind, nSubCellIndex, L_RGN_OR, TRUE, 0);
打破;
}
返回成功;
}
L_INT discontainerannotationcallbackexample (hdiscontainerhcon)
{
DISPCONTAINERANNOTATIONCALLBACK oldCallBack;
L_VOID * pOldUserData;
如果(l_discontainergetcellcount (hCon, 0) == 0)
{
对话框(NULL,文本("您必须至少向查看器中添加一个单元格"),文本(“无细胞附着”), MB_OK);
返回失败;
}
HWND hcellwind = l_discontainergetcellwindowwhandle (hCon, 0,0);
l_discontainergetannotationcallback (hcellwind, &oldCallBack, &pOldUserData);
l_discontainersetannotationcallback (hcellwind, AnnotationCallBack, hCon);
返回成功;
}