| 作者 | 主题 |
|---|---|
|
有故事的人 游士 经验值:182 发帖数:40 精华帖:0 |
楼主
主题:WinCC中VB脚本定义Single实数数据类型
项目中要用到一个功能,逻辑是这样的:操作人员在WinCCI/O域中输入一个实数,比如2.5,点击按钮获取当期系统时间并用当前时间加上I/O域中输入的时间计算出未来的时刻。并要求显示成时间方式。
比如I/0域中设定22.5,当前系统时间是2009-12-17-10:30那么这样加下来应该显示出2009-12-18-9:00. 一开始I/O域连接的只是整型,如2,22等,编写的程序能用,具体是 Dim a,b a=HMIRuntime.tag("timeset")//timeset是I/O域连接的变量 a.read a.value b=Now+a/24 最后用文本显示出时间,一切正常,现在客户要求时间输入带小数,所以程序修改了 Dim a,b As Single a=HMIRuntime.tag("timeset")//timeset是I/O域连接的变量 a.read a.value b=Now+a/24 但是每次提示 Dim a,b As Single 语句未结束,真的有点不懂了,查了VB的语法规则这样定义实数的语句没错啊 还请高手们指点
一个人的舞台
|
|
dcount107 侠圣 经验值:2840 发帖数:1737 精华帖:55 |
3楼
主题:回复:WinCC中VB脚本定义Single实数数据类型
1、WinCC VBS不是VB,变量只有一种类型Variant,而且是隐式声明。
2、时间的加减需要借助DateAdd函数来实现。参考代码如下: Dim a,b Set a=HMIRuntime.Tags("timeset") b=DateAdd("N",a.read*60,Now()) HMIRuntime.trace FormatDateTime(b,0) & vbCrLf
非淡泊无以明志,非宁静无以致远
|