关于getlink的使用
林慧玲
发布于2014-03-24 17:51
1317
0
标签:
#definepropertyname"controlvalue"
linkinfolinkinfo
getlink(lpszpicturename,lpszobjectname,propertyname,&linkinfo);
if(strlen(linkinfo.szlinkname)>0)
settagword(linkinfo.szlinkname,(word)value);
else
setpropdouble(lpszpicturename,lpszobjectname,propertyname,value);
这段程序的意义。
问题补充:
为什么要声明#definepropertyname"controlvalue",而不是直接写作getlink(lpszpicturename,lpszobjectname,“controlvalue”,&linkinfo)呢?
佳答案
getlink的功能是获取某个画面中指定对象其属性的动态连接特性。
连接属性包括动态连接类型、更新方式及连接的变量名称。
函数原型如下:
boolgetlink(
lpctstrlpszpicturename,//画面名称
lpctstrlpszobjectname,//对象名称
lpctstrlpszpropertyname,//属性名称
lplinkinfo*plink);//连接特性结构指针
其中,linkinfo是结构体。定义如下:
typedefstruct{
linktypelinktype;
dworddwcycle;
tcharszlinkname[256];
}linkinfo;
说明:
linktype:连接类型,
dwcycle:更新方式
szlinkname[256]:变量名称
程序的意思参见youhm的回答。
define是c语言中的预处理命令,可以提高源代码的可读性。详细的需要查一下c语言的资料了。
在wincc的帮助中搜索“wincc编码规则”能查到一些信息。