在同一个 WinCC 在线趋势控件中,通过同一个趋势控件来显示多条不同测量点的曲线,从而随时查看两个曲线的对比
控件类型:TlgOnlineTrend 该控件在v7.3 版本中没找到,该版本控件在v7.5和v8.0中使用无法正常显示标尺
在v7.3版本中如图

在v7.5版本中如图
每次打开都需要进行手动调整标尺

在v8.0版本中如图
在v8.0版本中直接无法显示标尺,手动进行调整也无法正常显示

3个版本中都是通过一样的C脚本,如下:
#include "apdefap.h"
void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
#pragma option(mbcs)
#define pic1 "加药装置.pdl" //当前画面
#define pic2"drends" //显示窗口
#define pic4 "drendall.Pdl" //趋势控件画面
SetVisible (pic1,pic2,0);
SetVisible (pic1,pic2,1);
SetPropDouble("drendall.Pdl","drend","Index",0);
SetPropChar(pic4,"drend","TagName","LLLJ\\防水B泵加药量"); //Return-Type: BOOL
SetPropDouble("drendall.Pdl","drend","Index",1);
SetPropChar(pic4,"drend","TagName","LLLJ\\防水B实时流量.PV"); //Return-Type: BOOL
SetPropChar(pic4,"drend","Command","Reload"); //Return-Type: BOOL
}
针对标尺无法正常显示情况只能更换使用新版趋势控件进行重新更改画面及脚本
控件:Wincc OnlineTrendControl 中的 AxOnlineTrendControl
新版趋势控件不自带标尺需要额外添加一个标尺控件
改了新控件如下图显示,在v7.5和v8.0中都能正常显示

新C脚本如下:
#include "apdefap.h"
void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
#pragma option(mbcs)
#define pic1 "加药装置.pdl" //当前画面
#define pic2"Trend" //显示窗口
#define pic4 "Trend_Control.Pdl" //趋势控件画面
SetVisible (pic1,pic2,0);
SetVisible (pic1,pic2,1);
SetPropDouble("Trend_Control.Pdl","Trend","TrendIndex",0);
SetPropChar(pic4,"Trend","TrendTagName","LLLJ\\防油剂C加药量"); //Return-Type: BOOL
SetPropDouble("Trend_Control.Pdl","Trend","TrendIndex",1);
SetPropChar(pic4,"Trend","TrendTagName","LLLJ\\防油C实时流量.PV"); //Return-Type: BOOL
SetPropChar(pic4,"Trend","Command","Reload"); //Return-Type: BOOL
}
个人感觉旧版本的趋势控件显示的画面比较简洁