技术论坛

 回复:学习别人的WINCC项目,有段脚本看不懂,请朋友们指点下,多谢。

返回主题列表
作者 主题
rgbfii
游民

经验值:139
发帖数:6
精华帖:0
楼主    2015-04-22 21:26:38
主题:学习别人的WINCC项目,有段脚本看不懂,请朋友们指点下,多谢。
拷贝别人的WINCC污水项目,有段通过C脚本让圆显示不同的颜色,脚本看不懂,请指点下。多谢

#include "apdefap.h"
long _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
// next TagID : 2
#define TAG_1 "RW/03H102_F"
// WINCC:TAGNAME_SECTION_END

// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC:PICNAME_SECTION_END

if ((unsigned long)GetTagDouble (TAG_1))
return 65535;
else
return 12632256;
}


万泉河
至圣

经验值:29190
发帖数:10900
精华帖:131
1楼    2015-04-24 11:01:08
精华帖  主题:回复:学习别人的WINCC项目,有段脚本看不懂,请朋友们指点下,多谢。
是不是看了这样的代码感觉很受挫败?

安慰一下你吧,这代码不是人写的。是做动态对话框的时候系统自动生成的。

不过要看懂,也没多难,前提是要理解RGB三原色原理,然后把上面的数字转换为16进制来看。
微信公众号:PLC标准化编程,ZHO6371995
RENHQ
版主

经验值:74828
发帖数:13653
精华帖:61
2楼    2015-04-25 21:54:44
精华帖  主题:回复:学习别人的WINCC项目,有段脚本看不懂,请朋友们指点下,多谢。
#define TAG_1 "RW/03H102_F" //定义一个变量

if ((unsigned long)GetTagDouble (TAG_1)) //获取变量的值
return 65535; //如果是1,返回颜色#00FFFF(RGB:0,255,255),那种淡蓝色吧
else
return 12632256;//返回颜色#C0C0C0(RGB:192,192,192)灰色
}
Q群:https://jq.qq.com/?k=9BDuEgf6
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。