主画面组态一个按钮,C脚本如下
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
// next TagID : 1
// WINCC:TAGNAME_SECTION_END
// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC:PICNAME_SECTION_END
Value(
lpszPictureName, //picture name
lpszObjectName,
"BO_PIPE7_SOV" , //TAG
"7#支管切断阀",
"button_auto.PDL" //pagename
);
}
然后新建一个button_auto.PDL的画面,画面有手/自动选择,打开/关闭按钮。我只复制手动选择的C脚本,
#include "apdefap.h"
void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
// next TagID : 1
// WINCC:TAGNAME_SECTION_END
// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC:PICNAME_SECTION_END
LINKINFO linkinfo1;
BOOL open;
GetLink(lpszPictureName,"TAG","OutputValue",&linkinfo1);
SetTagDWord(linkinfo1.szLinkName,GetTagDWord(linkinfo1.szLinkName)0x00020000);
//SetPropBOOL(lpszPictureName,"Button2","Operation",TRUE);
//SetPropBOOL(lpszPictureName,"Button4","Operation",TRUE);
}
有点搞不清楚,C脚本value、getlink和SetTagDWord的用法,以及SetTagDWord中0x00020000指的是什么呢?求助各位高手