如何解释该WinCC脚本语句 点击:1679 | 回复:2



sylgdxsgx

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 14回
  • 年度积分:0
  • 历史总积分:10
  • 注册:2013年9月03日
发表于:2014-09-16 14:34:47
楼主

这是按钮的‘事件-单击鼠标’的VBS脚本:

Sub OnClick(Byval Item)              

   Dim strStartBildName,objText,objGraphicView,mystring

   Set objText=HMIRuntime.Tags("Text")

   objText.Write Item.Parent.Parent.ObjectName


   Set strStartBildName=HMIRuntime.BaseScreenName

   Set objGraphicView=Item.Parent.Parent.ObjectName


   If isobject(Item) Then

   mystring=Split(Item.Text,"-",-1,1)

   Else

   mystring=Split(Item,"-",-1,1)

   End If


   objGraphicView.PictureName=Trim(mystring(0)) & ".PDL"

End Sub

结果变量Text的值为MainView,也就是说Text有结果。

但是,当脚本做如下调整后:

Sub OnClick(Byval Item)              

   Dim strStartBildName,objText,objGraphicView,mystring


   Set strStartBildName=HMIRuntime.BaseScreenName

   Set objGraphicView=Item.Parent.Parent.ObjectName


   Set objText=HMIRuntime.Tags("Text")

   objText.Write Item.Parent.Parent.ObjectName


   If isobject(Item) Then

   mystring=Split(Item.Text,"-",-1,1)

   Else

   mystring=Split(Item,"-",-1,1)

   End If


   objGraphicView.PictureName=Trim(mystring(0)) & ".PDL"

End Sub

Text没有输出MainView了,这是为什么?





湛蓝小尔

  • 精华:1帖
  • 求助:142帖
  • 帖子:180帖 | 473回
  • 年度积分:14
  • 历史总积分:1399
  • 注册:2014年2月19日
发表于:2014-09-16 22:01:29
1楼

给跪了,只会些许VB,刚接触wincc,一点也不懂它的脚本,也找不到书

sylgdxsgx

  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 14回
  • 年度积分:0
  • 历史总积分:10
  • 注册:2013年9月03日
发表于:2014-09-17 15:13:22
2楼

我知道原因了,Set strStartBildName=HMIRuntime.BaseScreenName错了,要将Set去掉。改成:strStartBildName=HMIRuntime.BaseScreenName


热门招聘
相关主题

官方公众号

智造工程师