回复:Function trendcontrol的应用,如何绘制多条曲线

hltjszx

  • 帖子

    17
  • 精华

    0
  • 被关注

    1

论坛等级:游民

注册时间:2016-09-12

普通 普通 如何晋级?

发布于 2025-05-03 12:34:38

3楼

这是放在按钮下的脚本

Sub OnClick(Byval Item)                                    

Dim X_values,Y_values

Dim objSelect2,select2

Dim X_values1,Y_values1


Dim Key,FctTrdCtrl,objTrend,i,j

Dim objTrend1


refresh


X_values = Array(0,1,2,3,4,5,6,7,8,9,10)

Y_values = Array(0,0,40,40,40,80,80,80,80,40,0)


X_values1 = Array(0,1,2,3,4,5,6,7,8,9,10)

Y_values1 = Array(20,20,40,40,50,80,90,90,90,40,40)


Set Key = ScreenItems("key")

Key.Operation = vbFalse

Set FctTrdCtrl = ScreenItems("YXtrend")


FctTrdCtrl.Trendindex = 0

FctTrdCtrl.TrendRemove = vbTrue


FctTrdCtrl.XAxisAutorange = vbFalse

FctTrdCtrl.XAxisBeginValue = 0

FctTrdCtrl.XAxisEndValue = 12




' Y-axis property setting


FctTrdCtrl.YAxisAutorange = vbFalse


FctTrdCtrl.YAxisbeginValue = 0


FctTrdCtrl.YAxisendValue = 100




FctTrdCtrl.TrendProvider = 0

FctTrdCtrl.TrendAdd = vbTrue


Set objTrend = FctTrdCtrl.GetTrend(0)

objTrend.Removedata


For i = 0 To 10

objTrend.Insertdata X_values(i),Y_values(i)

Next



Set objTrend1 = FctTrdCtrl.GetTrend(1)

objTrend1.Removedata


For j = 0 To 10

objTrend1.Insertdata X_values1(j),Y_values1(j)

Next


Key.Operation = vbTrue

Set fctTrdCtrl=Nothing

Set objTrend=Nothing

End Sub


其中报错的描述是:

Error : Can not execute method if a Provider is configured

提示报错的地方是:

objTrend1.Removedata(这句)

For j = 0 To 10

objTrend1.Insertdata X_values1(j),Y_values1(j)

Next

控件上也增加了第二条趋势,第二个趋势窗口,还是会报上面的报警


评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32566条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。