WinCC笔记:03.趋势图控件 —— (1) 复选框控制趋势显示和隐藏
目录
一、前期准备
1.在变量管理里建内部变量
2.放置控件
二、效果
三、代码
1.复选框的代码
2.打开画面时的代码
四、代码分析
1.SetPropDouble
2.SetPropBOOL
3.GetPropDouble
4.SetTagDWord
一、前期准备
1.在变量管理里建内部变量
“test1"~"test10","pows","result",如下图红框所示
2.放置控件
WinCC OnlineTrendControl、复选框、10个输入输出域
(1) WinCC OnlineTrendControl
1.对象名称改为"ctrltrend"
2."趋势"里新增10个趋势,数值轴都为"数值轴1",变量名称从test1~test10对应选择。
3.填写"数值轴"中值的范围。
(2) 10个输入输出域
输出值从test1~test10依次填写
(3) 复选框
1.对象名称改为"ctrlcheckbox"
二、效果
三、代码
1.复选框的代码
Function BoxCount_Trigger(Byval Item)
Dim trend,checkbox,count,i
Set trend=ScreenItems("ctrltrend")
Set checkbox=ScreenItems("ctrlcheckbox")
checkbox.BoxCount = trend.TrendCount
count=checkbox.BoxCountFor i=1 To countcheckbox.Index =itrend.TrendIndex = i-1checkbox.Text = trend.TrendName '把趋势图里的趋势名称,导入到复选框中
Next
End Function
#include "apdefap.h"
void OnPropertyChanged(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, long value)
{
// 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
double process,pows;
DWORD process1,pows1,result;
//int RetMsg;
int i;
for (i=0;i<=9;i++)
{
pows=pow(2,i); //pows=2的i次方
process=GetPropDouble(lpszPictureName,"ctrlcheckbox","Process");
process1=(DWORD)process;
pows1=(DWORD)pows;
SetTagDWord("pows",pows1); //把2的i次方赋值给trendtag32
result=process1&GetTagDWord("pows");//按位做与运算
SetTagDWord("result",result); //把运算结果赋值给result
SetPropDouble(lpszPictureName,"ctrltrend","TrendIndex",i); //选定曲线i
if (GetTagDWord("result")!=0)
SetPropBOOL(lpszPictureName,"ctrltrend","TrendVisible",TRUE); //则使其显示
else
SetPropBOOL(lpszPictureName,"ctrltrend","TrendVisible",FALSE); //则使其不显示
}
}
2.打开画面时的代码
#include "apdefap.h"
void OnOpenPicture(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
int i;
for (i=0;i<=9;i++)
{
SetPropDouble(lpszPictureName,"ctrlTrend","TrendIndex",i); //选定曲线0-9
SetPropBOOL(lpszPictureName,"ctrlTrend","TrendVisible",FALSE); //使这10条曲线不显示
}
}
四、代码分析
1.SetPropDouble
SetPropDouble(ScreenName, Object, NameOfTheProperty, Value)
2.SetPropBOOL
SetPropBOOL(ScreenName, Object, NameOfTheProperty, Value)
3.GetPropDouble
GetPropDouble(ScreenName, Object, NameOfTheProperty)
4.SetTagDWord
SetTagDWord(Tag Tag_Name,DWORD value)
WinCC笔记:03.趋势图控件 —— (1) 复选框控制趋势显示和隐藏相关推荐
- C#ListView控件添加复选框并获取选中的数目
1.添加复选框:listView1.CheckBoxes = true; 2.选中listview并获取选中的数目: private void listView1_ItemChecked(object ...
- ExtJs中定制日历控件——带复选框
效果图: 代码: /*********************日历组件部分**************************** begin */ var dateArray = new Array ...
- elementui树形复选框_Element-ui表格树形控件结合复选框实践
Element-ui是现在国内用得比较多的ui框架,其table组件提供了多选以及树形数据的功能,但却没有提供将两者结合的功能,我们先来看下面的图片,本文将介绍以下的功能如何实现以及其中的一些踩坑点. ...
- 5、Web 窗体的基本控件——复选框控件和复选组控件(CheckBox 和 CheckBoxList)
5.Web 窗体的基本控件--复选框控件和复选组控件(CheckBox 和 CheckBoxList) 复选框控件和复选组控件(CheckBox 和 CheckBoxList) 前端 <%@ P ...
- html文本框 控件,标签和文本框都用于显示文本
用标签和文本框都可以显示文本信息,二者有什么区别 标签和文本框控件都可以显示文本,它们之间有什么区别?标签只能显示一横... 文本框可以显示很多横... 不对.标签框(Label)不能输入文本. VB ...
- WinCC笔记:01.TreeView控件 —— (2)连接数据库创建节点
目录 一.最终效果图 二.数据库一览 三.代码 四.代码分析 一.最终效果图 二.数据库一览 这里使用的是SQL Server Tools 18,可以链接到WinCC自动生成的数据库.首先使用WinC ...
- Vue的表单组件之复选框
复选框分单独使用和组合使用. 复选框单独使用时: <div id="app"><input type="checkbox" v-model=& ...
- easyui数据表格显示复选框_【Excel技巧】使用控件一键切换实现单位元和万元随意显示...
工欲善其事,必先利其器.职场上亦是如此.Excel报表想要做得完美,首先肯定Excel要精通. 做一份Excel报表,如果涉及到金额,当金额比较大,单位到底是用元还是万元,经常是大家纠结的一个问题.我 ...
- easyui数据表格显示复选框_WinCC 报警控件、在线趋势/表格控件数据查询
1.报警控件数据查询 在WinCC报警记录组态时,我们可以给报警消息定义不同的类别.类型.用户文本块等(图1),有了以上的组态,我们就可以自定义过滤条件,在报警控件中查询或显示分类的报警信息. 图 1 ...
- vs mfc数据与控件绑定错了_如何进行数据趋势分析?VS扩展工具——C1迷你图控件了解一下...
点击"了解更多"获取ComponentOne 2020 v1正式版下载 迷你图 -- Sparklines是迷你的轻量级图表,有助于快速可视化数据. 它们是由数据可视化传奇人物Ed ...
最新文章
- oracle 用户创建角色,oracle普通用户创建和加权限
- HDU 3613 Best Reward 正反两次扩展KMP
- C++编程【Visual Studio 2017 环境搭建教程】【附:软件安装包】
- SQL中的left join
- 简单实现仿某宝地址选择三级联动样式
- lisp的vla函数画矩形_利用Lisp做Tin三角网建模(源代码)
- 开放源码软件的安装(tar包安装方法)
- hackerrank 刷题一(python 基础)
- WAV音乐文件无法修改标题
- 网站内容收录不稳定/不收录的原因分析
- CocoWu‘s Summer English Study Summery
- 关于物联网进入元宇宙时代的基础与发展思考
- 基于STM32F4的CANOpen移植教程(超级详细)
- [POI2006] TET-Tetris 3D
- 【概率论】4-5:均值和中值(The Mean and the Median)
- idea中设置jdk
- 应广单片机_呼吸灯理解
- 招商银行第一面(群面,2020.04.01)——即兴演讲
- 数据分析归因分析类型与实战数据
- sdcms php版手册,sdcms常用手册汇总