我想给一个圆对象的属性:背景颜色 编程,用一个wincc外部变量的变化改变圆的颜色,假定外部变量是mycolor1;我是如下写的,编译没有错,可是没有反应,不知道是不是要调用setbackcolor()之类的函数,请大家多多指教,不胜感激!
#include "apdefap.h"
long _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
#define tag_0 "mycolor1"
// next TagID : 1
// WINCC:TAGNAME_SECTION_END
// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC:PICNAME_SECTION_END
long int mycolor,i;
char* name;
i=GetTagDWord("tag_0"); //Return-Type: DWORD
if(i==1)
mycolor=0x000000FF;
else
mycolor=0x0000FF00;
name=lpszPropertyName;
SetTagDWord(name,mycolor); //Return-Type: BOOL
return *name;
}
最佳答案
在属性的脚本里直接返回值就可以了,return mycolor;
#include "apdefap.h"
long _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
#define tag_0 "mycolor1"
// next TagID : 1
// WINCC:TAGNAME_SECTION_END
// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC:PICNAME_SECTION_END
long int mycolor,i;
//char* name;
i=GetTagDWord("tag_0"); //Return-Type: DWORD
if(i==1)
mycolor=0x000000FF;
else
mycolor=0x0000FF00;
//name=lpszPropertyName;
//SetTagDWord(name,mycolor); //Return-Type: BOOL
//return *name;
return mycolor;
}
提问者对于答案的评价:
谢谢你仔细地看了我写的程序,指出了我不知道的关键点,万分感谢。同时也在这里谢谢KCN工程师写的程序,我调试了,是可以用的,在这里向您表示感谢。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc269673.html