搬家第14天-175. Wincc V7.3 vbs使用常数数组在 Functrend绘制曲线

以前做过练习,可以在Functrend控件上绘制曲线,时间一长有点忘记了。今天有一个网友问如何使用常数数组绘制,我试着再做了一遍,其实还是挺好做的。

在画面上放置一个按钮,名字为btn,放置一个Functrend控件,名字修改为FuncTrend,按钮的点击事件添加以下vbs脚本

Sub OnClick(ByVal Item)                                                                     
Dim Key, FctTrdCtrl, objTrend,i
Dim X_Values
Dim Y_Values
' "btn" is the name of the clicked button
' Disable operator control and force grafic output
Set Key = ScreenItems("btn")
Key.Operation = vbFalse
refresh
X_Values = Array(-1,1,2,3,4,5,6,7,8,9,10)
Y_Values = Array(1,1,4,9,16,25,36,49,64,81,100)

'For i = 0 To 200
'  X_Values(i)=-100 + i
'  Y_Values(i)=X_Values(i) * X_Values(i)
'Next
Msgbox "OK"
Set FctTrdCtrl = ScreenItems("FuncTrend")
' Set index for trend 1 and delete data
FctTrdCtrl.TrendIndex = 0  '与V6.2版本不一样
FctTrdCtrl.TrendRemove=vbTrue  '与V6.2版本不一样
' X-axis property setting
FctTrdCtrl.XAxisAutorange = vbFalse '与V6.2版本不一样
FctTrdCtrl.XAxisBeginValue = -10   '与V6.2版本不一样
FctTrdCtrl.XAxisEndVALUE = 20   '与V6.2版本不一样
' Y-axis property setting
FctTrdCtrl.YAxisAutorange = vbFalse '与V6.2版本不一样
FctTrdCtrl.YAxisBeginValue = -10   '与V6.2版本不一样
FctTrdCtrl.YAxisEndValue = 200  '与V6.2版本不一样
FctTrdCtrl.TrendProvider =0  '无数据源,通过脚本分配
FctTrdCtrl.TrendAdd =vbTrue

Set objTrend = FctTrdCtrl.GetTrend("趋势 1") '与V6.2版本不一样,如果是英文版,这里是“Trend 1”
objTrend.removeData'与V6.2版本不一样
For i = 0 To 10
   objTrend.InsertData X_Values(i),Y_Values(i)  '与V6.2版本不一样
Next
Key.Operation = vbTrue
Set fctTrdCtrl=Nothing
Set objTrend=Nothing
End Sub

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