欢迎来到西门子工业支持中心网站!
欢迎来到西门子工业支持中心网站!
悬赏:15分 | 解决时间:2011-07-04 15:12
产品版区:
SIMATIC WinCC
风哥哥
大家好,我刚学WINCC不久,不会用复选框对一个变量赋值,我想做一个复选框。选择1时对变量1赋值为10.选择2时候对变量2赋值为20,我在论坛上看了很多大家的回帖,但是本人还是很笨不能够深入理解,忘大虾们能够帮帮我。谢谢
小程序:
最佳答案
check2的脚本:
dim obj2
set obj2=screenitems("Check2")
dim tag2
set tag2=hmiruntime.tags("tag2")
tag2.read
if obj2.value=1 then
tag2.write20
else
tag2.write 0 ''当复选框取消选中时变量归0,你不要这功能删除这行代码
end if
set obj2=nothing
set tag2=nothing
回答者:
mugui
回答时间:2011-07-04 09:08
提问者对于答案的评价:
谢谢各位。分数只能给一位,最后我用了C,应该在事件里的选项框而不是属性里的选项框。
switch(value)
{
case 1 : SetTagWord("NewTag_9",10);
break;
case 2 : SetTagWord("NewTag_9",200);
break;
case 4 : SetTagWord("NewTag_9",500);
break;
case 8 : SetTagWord("NewTag_9",1000);
break;
}
参考:
http://www.ad.siemens.com.cn/service/answer/solution.asp?Q_id=26616&cid=1032
http://hi.baidu.com/knowtohow/blog/item/a1ee1b87558fc521c75cc36d.html
根据介绍,自己尝试编写脚本函数,还是很简单的
WinCC图形编辑器中“对象选项板”--“智能对象”--“复选框”复选框的属性->输出/输入->选择框,将其属性动态化连接一个C动作,
静态1加如下脚本:
SetTagWord(“变量1”,10) 变量是16位整数
静态2加如下脚本:
SetTagWord(“变量2”,20) 变量是16位整数
复选框是给这个复选框连接的变量的每一个位赋值的,所以你需要用到barry的方法,但是要判断你选择的是哪个位。
现赠您1张1847体验会员卡,可免费领取,畅学1847会员内容,是否领取?
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!