您的位置:控制工程论坛网论坛 » 自动化软件 » wincc vbs语言解释

aaing

aaing   |   当前状态:在线

总积分:27966  2024年可用积分:0

注册时间: 2007-04-27

最后登录时间: 2023-08-21

空间 发短消息加为好友

wincc vbs语言解释

aaing  发表于 2016/1/28 21:20:42      1032 查看 3 回复  [上一主题]  [下一主题]

手机阅读

sub onclick{byval item}
V_Dis "main.画面窗口2:main01","1#阴床 反洗进水阀",5, 1, "Anion_FJ2.",1
end sub
***************************************************************************
Sub V_Dis(Byval Pic,Byval Name,Byval Num, Byval V_Num, Byval Prefix,Byval Mode)
Dim a,b,c
HMIRuntime.Tags("Dev_Num").Write Num
HMIRuntime.Tags("Dev_V_Num").Write V_Num

Set a = HMIRuntime.Screens(Pic).ScreenItems("阀窗口")
a.CaptionText = Name
a.TagPrefix = Prefix
a.Visible = False
a.Visible = True
a.PictureName = "操作窗口-阀"

c = Pic & ".阀窗口:操作窗口-阀"
Set b = HMIRuntime.Screens(c).ScreenItems("Mode")
If Mode = 1 Then
b.Visible = True
Else
b.Visible = False
End If
End Sub希望大神能详细解释每一句,不胜感激

1楼 0 0 回复
  • wangchen

    wangchen   |   当前状态:在线

    总积分:9915  2024年可用积分:7

    注册时间: 2010-03-25

    最后登录时间: 2024-05-22

    空间 发短消息加为好友

    wangchen   发表于 2016/1/29 9:34:24

    我试着解答一下吧:
    sub onclick(byval item)这个是控件点击事件,执行一个自定义动作V_Dis 。
    V_Dis 动作有六个参数:
    1. 第一步先把wincc变量Dev_Num赋值5,
    2.第二步把Wincc变量Dev_V_Num赋值1,
    3.第三步令内部变量a为画面Pic的对象“阀窗口”
    4.第四步令画面Pic的对象"阀窗口"的标题栏显示"1#阴床 反洗进水阀"
    5.第五步令画面Pic的对象"阀窗口"的变量前缀为"Anion_FJ2."
    6.第六步令画面Pic的对象"阀窗口"不可见(隐藏)
    7.第七步令画面Pic的对象"阀窗口"可见
    8.第八步令画面Pic的对象"阀窗口"装载的画面为"操作窗口-阀"
    9.第九步令内部字符串变量c为"main.画面窗口2:main01.阀窗口:操作窗口-阀"
    10.第十步令内部变量b为画面main的画面窗口对象中main01画面的画面窗口“mode”
    11.控制mode控件是否可见。


    wincc有一个主画面main,主画面上有一个"画面窗口对象2",这个窗口对象里面有画面main02,main02上有一个画面窗口对象,名字叫做"阀窗口",这个"阀窗口"就是用于人机交互操作控制阀门的,里面也有一个画面"操作窗口-阀",V_DIs传递了一个变量前缀"Anion_FJ2"过来,具体是控制哪个阀门通过参数Name传递,本例中是控制"1#阴床 反洗进水阀",画面"操作窗口-阀"上有一个控件“Mode”,这个控件是不是可见,就根据V_Dis 最后一个函数是不是可见来控制。
    变量前缀使用基于同类型设备控制方式相通,变量名称类似,比如阀门统一命名为***_remote、***_Ready、***_Runing、***_Start等扽分,前面的***就作为前缀,本例中的“操作窗口阀”页面就可作为模板反复调用,每次只需要对画面窗体对象“阀窗口”传递不同的前缀即可。


    希望可以帮到你。

    2楼 回复本楼

    引用 wangchen 2016/1/29 9:34:24 发表于2楼的内容

  • qingsong

    qingsong   |   当前状态:在线

    总积分:120  2024年可用积分:0

    注册时间: 2013-08-21

    最后登录时间: 2021-12-23

    空间 发短消息加为好友

    qingsong   发表于 2016/1/29 12:05:19

    dev_num是设备编号

    3楼 回复本楼

    引用 qingsong 2016/1/29 12:05:19 发表于3楼的内容

  • xuwenbin

    xuwenbin   |   当前状态:在线

    总积分:4115  2024年可用积分:0

    注册时间: 2007-06-08

    最后登录时间: 2023-08-16

    空间 发短消息加为好友

    xuwenbin   发表于 2016/1/31 8:49:34

    由于看不到整个项目,我猜测dev_num是设备编号,赋值为5,dev_v_num我猜测是表示设备中阀门编号,编号为1,这两个编号,在面板控制的时候应该会引用到。最后一个1是控制mode控件是否可见的,我个人猜测这个mode是手自动或者正常/故障之类的文本显示,为1就显示出来,为0就隐藏起来。

    4楼 回复本楼

    引用 xuwenbin 2016/1/31 8:49:34 发表于4楼的内容

总共 , 当前 /