搬家第11天-146.Wincc V7.3 OWC Chart控件初步使用8-曲线的显示和隐藏

前面介绍过曲线上数字标注的显示和隐藏,其实我们还可以直接隐藏掉曲线。假设画面上已经有一个Mcrosoft Office Chart控件,名字叫做Chart,已经生成了曲线,是这个样子:

画面上放置一个checkbox控件,名字修改为CB1,文字修改成这个样子:

画面的打开事件中添加以下vbs脚本:

Sub Process_OnPropertyChanged(Byval Item, Byval value)                  
Dim process,pows,i,dl,line,backwall,color(3)
Dim Chart,CB
Set Chart=ScreenItems("Chart")
Set CB=ScreenItems("CB1")
Set backwall=Chart.Charts.Item(0).PlotArea
'color数组的初始值要符合曲线生成时候的颜色

color(1)=vbRed
color(2)=vbBlue
color(3)=vbYellow
For i=0 To 2
 pows=2^i
 process=CB.Process
 Set dl = Chart.Charts.Item(0).SeriesCollection.item(i).DataLabelsCollection.item(0)
 Set line=Chart.Charts.Item(0).SeriesCollection.Item(i).Line
 If process And pows Then 
  dl.HasValue = True
  line.color= color(i+1)   
 Else
  dl.HasValue = False 
  line.color= backwall.Interior.Color 
 End If
Next

End Sub

由于没有找到曲线hide事件以及.visible属性,于是变相的把曲线的颜色改成和背板的颜色一致,同时取消数字标注,这样看起来曲线就隐藏掉了。保存运行后的效果是这样子:

在曲线的交汇处,还是可以看出来有断点,如果一幅图曲线较多的话,做完隐藏工作,这种断点就会更加明显。

posted @ 2021-02-08 20:43  来自金沙江的小鱼  阅读(1341)  评论(0编辑  收藏  举报