07-WinCC VBS在WinCC中常用实例及函数的用法介绍<一>
1、访问图形编辑器中的对象——ScreenItems
用法:
dim obj
set obj=Screenitems([图形对象名称])
注意:图形对象名称即在图形编辑器中的按钮、圆、矩形、线、IO域、静态文本等图形对象的对象名称,该对象名称可以是直接写入对象名称,也可以使用字符串进行替代。
例如,在一个画面中,有十个圆形,其对象名称分别为“C1”、"C2"。。。"C10",如果逐个进行对象创建比较麻烦,这个时候就可以根据实际需要进行筛选,如通过一个循环,批量的对对象的半径进行修改,设定全部半径为20.
dim i,obj for i=1 to 10set obj=ScreenItems("C"+Cstr(i))obj.Radius=20 next set obj=nothing
2、Screens的用法
Screens主要是对画面窗口的操作,可以通过Screens在当前画面中直接对其他不同路径中的画面窗口中的对象进行操作。
如在一个画面中,按下一个按钮后,想让Start画面中的一个名为“EXIT”的窗口显示出来就可以使用一下代码实现。
Dim objGroup Set objGroup = HMIRunTime.Screens("Start").ScreenItems("EXIT") objGroup.Visible =true
详细见该博文:WinCC中如何通过VBS对不同路径的多层嵌套的控件进行操作 - 老迈克 - 博客园
3、WinCC系统禁用
该指令较为简单,可以配合弹窗使用,二次确认是否需要进行系统禁用或者取消激活。
用法:直接使用 hmiruntime.stop
dim con con=MsgBox("按「确定」继续执行,按「取消」退出", vbOKCancel, "提示") If con= vbOK Thenhmiruntime.stop End If
4、变量的操作
用法:hmiruntime.tags([变量名称]),变量名称可以直接使用变量名称也可以使用字符串实现动态操作。
'简单直接写入变量值 HMIRuntime.Tags("Tag1").Write 6'通过对象引入写入变量值 Dim objTag Set objTag = HMIRuntime.Tags("Tag1") objTag.Write 7'通过利用引用,可以在写入之前使用变量对象。可以读取变量值,进行计算,并再次写入: Dim objTag Set objTag = HMIRuntime.Tags("Tag1") objTag.Read objTag.Value = objTag.Value + 1 objTag.Write'简单读取 HMIRuntime.Trace "Value: " & HMIRuntime.Tags("Tag1").Read & vbCrLf'通过利用引用可以使用变量对象。 可以读取变量值,进行计算,并再次写入: Dim objTag Set objTag = HMIRuntime.Tags("Tag1") objTag.Read objTag.Value = objTag.Value + 1 objTag.Write'直接读取 Dim objTag,TagVal Set objTag = HMIRuntime.Tags("Tag1") HMIRuntime.Trace "Value: " & objTag.Read(1) & vbCrLf
5、写入对象属性
可以通过1中的Screenitems对对象的属性进行动态写入:
'最简单的写入,改变对象的背景色 ScreenItems("Rectangle1").BackColor = RGB(255,0,0)'通过引用设置属性 Dim objRectangle Set objRectangle = ScreenItems("Rectangle1") objRectangle.BackColor = RGB(255,0,0)'通过画面窗口设置属性 '以下示例中,在从属画面窗口中更改矩形的颜色。 相应脚本在画面窗口“ScreenWindow1”所处的画面“BaseScreen”中执行。 此画面窗口会显示包含名称为“Rectangle1”的“Rectangle”类型对象的画面。 Sub OnLButtonUp(ByVal Item, ByVal Flags, ByVal x, ByVal y) Dim objRectangle Set objRectangle = ScreenItems("ScreenWindow1").Screen.ScreenItems("Rectangle1") objRectangle.BackColor = RGB(255,0,0) End Sub'通过基本画面引用 '可通过 HMIRuntime.Screens 引用具有待修改对象的画面。该画面相对于基本画面的规范通过以下访问代码进行定义: ‘[<Grundbildname>.]<Bildfenstername>[:<Bildname>]... .<Bildfenstername>[:<Bildname>] ’在以下示例中,将创建对“Rectangle1”画面中包含的“Screen2”对象的引用,并将背景颜色设置为红色。 ‘这种情况下,画面“Screen2”位于“Screen1”中。 “Screen1”显示在基本画面“BaseScreen”中。 Dim objRectangle Set objRectangle = HMIRuntime.Screens("BaseScreen.ScreenWindow1:Screen1.ScreenWindow1:Screen2").ScreenItems("Rectangle1") objRectangle.BackColor = RGB(255,0,0)
6、控件的动态化
可以对趋势、报警等控件进行动态操作,该内容较多,后续分解介绍。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/957968.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!