搬家第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属性,于是变相的把曲线的颜色改成和背板的颜色一致,同时取消数字标注,这样看起来曲线就隐藏掉了。保存运行后的效果是这样子:
在曲线的交汇处,还是可以看出来有断点,如果一幅图曲线较多的话,做完隐藏工作,这种断点就会更加明显。