WinCC如何利用复选框和按钮来设置变量的数值?
现在有3个变量,a,b,c.两个按钮0,1.复选框1,a复选框2,b复选框3,c按钮0按钮1按钮0的作用是赋予其中至少1个复选框变量的值为0.按钮1的作用同上,不过赋值是...
现在有3个变量,a,b,c. 两个按钮0,1. 复选框1,a 复选框2,b 复选框3,c 按钮0 按钮1 按钮0的作用是赋予其中至少1个复选框变量的值为0. 按钮1的作用同上,不过赋值是1. 请问这个功能怎么实现?
展开
2个回答
展开全部
建立a,b,c三个内部变量,腔祥全部是二进制类型的变量
创建一个画面余圆散,画三个复选框,复选框的属性--》几何--》框数量 设置为1
第一个竖氏复选框,属性--》字体--》文本 改为A,其余两个分别为B、C
第一个复选框,属性--》输入输出--》在“动态”那右击--》变量--》选择变量a,其余两个选择b,c变量
在画面中画两个按钮,属性---》字体--》文本 改为按钮1,另外一个改为按钮2
按钮1,属性--》事件--》鼠标--》释放左键 在上面右击---》VBS动作 贴入下面的代码
Sub OnLButtonUp(Byval Item, Byval Flags, Byval x, Byval y)
Dim a,b 'a控制几个复选框为1,b控制到底是那一个或者多个复选框为1
Dim Tag_a,Tag_b,Tag_c
Set Tag_a=HMIRuntime.Tags("a")
Set Tag_b=HMIRuntime.Tags("b")
Set Tag_c=HMIRuntime.Tags("c")
a=Int(Rnd * 3) + 1 '产生1-3的随机数
b=Int(Rnd * 3) + 1
If a=1 Then
Select Case b
Case 1
Tag_a.Write 1
Case 2
Tag_b.Write 1
Case Else
Tag_c.Write 1
End Select
Elseif a=2 Then
Select Case b
Case 1
Tag_a.Write 1
Tag_b.Write 1
Case 2
Tag_a.Write 1
Tag_c.Write 1
Case Else
Tag_b.Write 1
Tag_c.Write 1
End Select
Else
Tag_a.Write 1
Tag_b.Write 1
Tag_c.Write 1
End If
End Sub
同样,按钮2是下面的代码
Sub OnLButtonUp(ByVal Item, ByVal Flags, ByVal x, ByVal y)
Dim a,b 'a控制几个复选框为1,b控制到底是那一个或者多个复选框为1
Dim Tag_a,Tag_b,Tag_c
Set Tag_a=HMIRuntime.Tags("a")
Set Tag_b=HMIRuntime.Tags("b")
Set Tag_c=HMIRuntime.Tags("c")
'Tag_a.Write 0
'Tag_b.Write 0
'Tag_c.Write 0
a=Int(Rnd * 3) + 1 '产生1-3的随机数
b=Int(Rnd * 3) + 1
If a=1 Then
Select Case b
Case 1
Tag_a.Write 0
Case 2
Tag_b.Write 0
Case Else
Tag_c.Write 0
End Select
Elseif a=2 Then
Select Case b
Case 1
Tag_a.Write 0
Tag_b.Write 0
Case 2
Tag_a.Write 0
Tag_c.Write 0
Case Else
Tag_b.Write 0
Tag_c.Write 0
End Select
Else
Tag_a.Write 0
Tag_b.Write 0
Tag_c.Write 0
End If
End Sub
附件是wincc 7.0 sp3 asia 编辑的画面。你创建一个工程把画面导入就可以打开查看了。和我上面说的是一样的,画面是已经做好的
展开全部
WinCC 中基本控件的使用(包括列表框,复选框慧和庆,前握单选框棚乱等)
http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=882
http://www.ad.siemens.com.cn/service/elearning/cn/Course.aspx?CourseID=882
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询