为何这段代码不能改变WinCC中的画面

我在WinCC中的全局脚本的VBS-Editor里项目模块输入以下这段代码
If chang_picture3=1 Then
HMIRuntime.BaseScreenName = "New3"
End If
If chang_picture4=1 Then
HMIRuntime.BaseScreenName = "New4"

End If
If chang_picture5=1 Then
HMIRuntime.BaseScreenName ="New5"

End If

其中chang_picture3和chang_picture4以及chang_picture5分别是WinCC中的变量,分别对应I0.3、I0.4、I0.5,这几个变量都可以和WinCC通信,但为何当I0.3为true时,不能做到跳转到New3的画面,当I0.4为true时,不做能到跳转到New4的画面,当I0.5为true时,不能做到跳转到New5的画面,是不是还要什么触发器触发?

问题补充:
改成下面这段代码也没有用:
Sub procedure2
If HMIRuntime.Tags("chang_picture3").Read Then
HMIRuntime.BaseScreenName ="New3"
End If
If HMIRuntime.Tags("chang_picture4").Read Then
HMIRuntime.BaseScreenName ="New4"
End If

If HMIRuntime.Tags("chang_picture5").Read Then
HMIRuntime.BaseScreenName ="New5"
End If

End Sub

图片说明:

为何这段代码不能改变WinCC中的画面   

最佳答案

要实现这样的功能,最好把程序在全局脚本编辑器中写为“动作”而不是项目模块。
动作 就涉及到触发器,就是把你的变量hang_picture3和chang_picture4以及chang_picture5设置的有变化时,设为这段动作的触发器。
如何建立“动作” 请搜索学习资源,或者看书,挺简单的。
可学习深入浅出winccV6 第二版 P131

提问者对于答案的评价:
谢谢

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc264113.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午2:45
下一篇 2019年6月11日

相关推荐