C脚本实现Wincc模拟量趋势窗口弹出
创作时间:
作者:
@小白创作中心
C脚本实现Wincc模拟量趋势窗口弹出
引用
CSDN
1.
https://blog.csdn.net/laohei026/article/details/138704242
本文介绍了一种基于C脚本实现点击输入输出域对象,弹出对应模拟量趋势窗口的方法。通过在Wincc中添加变量、配置控件和编写C脚本,可以实现单击不同输入输出域对象时弹出对应的趋势画面,且调用的是同一个趋势控件,操作简便。
一、步骤及解析
- 在Wincc变量管理中,添加两个变量;
示例如下: - 将以上两个变量添加到变量记录中;
- 打开Wincc计算机属性界面,勾选变量记录运行系统;
- 新建主画面,并添加一个“Wincc Online TrendControl”控件;
这里将主画面命名为“Start_New.Pdl”,将“Wincc Online TrendControl”控件命名为“ControlTrend”。 - 添加一个输入输出域对象,关联输入输出变量;
- 在事件选项卡中,选择单击鼠标,添加C动作;
代码如下:
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
#pragma option(mbcs)
SetVisible("Start_New.PDL","ControlTrend", 0);
SetVisible("Start_New.PDL","ControlTrend", 1);
SetPropWord("Start_New.PDL","ControlTrend","TrendIndex",0);
SetPropChar("Start_New.PDL","ControlTrend","TrendTagName","ProcessValueArchive\\F1.AI_OUT");
SetPropChar("Start_New.PDL","ControlTrend","Caption","F1_实际输出");
}
注释如下:
SetVisible("Start_New.PDL","ControlTrend", 0);
:这行代码设置名为 “ControlTrend” 的元素在 “Start_New.PDL” 中的可见性为0,即隐藏该元素。
SetVisible("Start_New.PDL","ControlTrend", 1);
:这行代码设置名为 “ControlTrend” 的元素在 “Start_New.PDL” 中的可见性为1,即显示该元素。
以上两行代码的目的是,在点击一个控件时,先关闭上一个弹窗,再弹出下一个弹窗。
SetPropWord("Start_New.PDL","ControlTrend","TrendIndex",0);
:这行代码设置名为 “ControlTrend” 的元素在 “Start_New.PDL” 中的 “TrendIndex” 属性为0。表示将趋势初始化。
SetPropChar("Start_New.PDL","ControlTrend","TrendTagName","ProcessValueArchive\F1.AI_OUT");
:这行代码设置名为 “ControlTrend” 的控件在主画面 “Start_New.PDL” 中弹出,该控件的 “TrendTagName” 属性为 “ProcessValueArchive\F1.AI_OUT”,其中“ProcessValueArchive”是变量记录的归档名称。
SetPropChar("Start_New.PDL","ControlTrend","Caption","F1_实际输出");
:这行代码设置名为 “ControlTrend” 的元素在 “Start_New.PDL” 中的标题(Caption)属性为 “F1_实际输出”。即趋势弹窗标题为 “F1_实际输出”。
- 同理,再添加一个输入输出域对象,并关联变量;
- 在事件选项卡中,选择单击鼠标,添加C动作;
代码如下:
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
#pragma option(mbcs)
SetVisible("Start_New.PDL","ControlTrend", 0);
SetVisible("Start_New.PDL","ControlTrend", 1);
SetPropWord("Start_New.PDL","ControlTrend","TrendIndex",0);
SetPropChar("Start_New.PDL","ControlTrend","TrendTagName","ProcessValueArchive\\T1.AI_OUT");
SetPropChar("Start_New.PDL","ControlTrend","Caption","T1_实际输出");
}
这里变量名为“T1.AI_OUT”,弹窗标题为"T1_实际输出",其它不变。
二、运行画面演示
三、总结
该方法实现了单击不同输入输出域对象,弹出对应的趋势画面,并且调用的是同一个趋势控件,不需要为每一个对象都添加一个趋势控件,比较方便。
热门推荐
炒肉不柴的小窍门,厨师长揭秘!
AI赋能热门游戏头像设计新趋势
锂电池系列研究——固态电池技术革新与全球竞争态势推演
智能LED灯:让家居照明既节能又时尚
LED照明技术:节能环保新宠儿
7天,160.28万人次!国庆假期,峨眉实力圈粉!
75年,无锡的“变”与“不变”
职场人际关系:如何避免职业遗憾?
苏格拉底与林徽因:一场跨越时空的人生选择对话
健康四大基石:减少人生遗憾的秘诀
用心理学照亮人生:如何治愈那些挥之不去的遗憾
南阳世界月季大观园:180万株月季花海里的文化盛宴
AI彩票软件真的靠谱吗?看完这篇你就懂了
福彩快3预测神器揭秘:真的靠谱吗?
无土栽培,农业的未来之光,颠覆传统农业!
无土栽培,农业的未来之光,颠覆传统农业!
南阳白河湿地公园:珍稀鸟类的安居之所
南阳白河湿地公园:生态保护的典范
南阳卧龙岗武侯祠:三国迷必打卡圣地
如何修复油烟机故障?快速解决你的厨房困扰
定期清洗抽油烟机的方法与技巧,保持厨房卫生清新
30款适合情侣两个人在一起时玩的双人小游戏盘点
情侣之间聊天的技巧与心思:增进感情的有效沟通方法
2025蛇年头像设计:高级矢量风来袭
《天官赐福》选角引发热议:翟潇闻、张凌赫能否胜任?
池州旅游排行,池州旅游必去十大景点
《混沌蝴蝶》:七位科幻作家笔下的未来图景
电信诈骗盯上企业“钱袋子”,财务人员如何筑牢防线?
空调效率低下?一篇文章教你如何彻底清洗过滤网!
清洗空调是请师傅还是自己来?自己动手需注意这三点