回复:wincc中显示时间问题

Zaxife

  • 帖子

    2450
  • 精华

    31
  • 被关注

    78

论坛等级:至圣

注册时间:2008-07-24

普通 普通 如何晋级?

发布于 2011-07-27 00:21:24

1楼

系统默认显示"AM/PM"在前面的。
不过,如果用VB脚本的话,可以间接实现的:

item.Text = Right(Time(),8) & " " & Left(Time(),2)

把上面的代码加到画面刷新上就是了,item.Text就是要显示文本的静态文本控件。

我的做法一般就是去掉静态文本控件的填充和设置边框线宽为0,然后设置该控件属性的"激活闪烁线",跟着在控件事件的其他的对象改变里面粘贴入上面的代码,当运行画面时就自动刷新时间显示了,感觉这样做挺方便的。
当然,前提是你的操作系统区域语言选项的自定义选项里面的系统时间必须是设置为12小时制的,且选择"AM"/"PM"符号。

如果系统是使用24小时制显示的,代码就多了些...
Sub OnObjectChanged(ByVal Item)
Dim T1,Ts1

On Error Resume Next
T1 = Hour(Now)

Select Case T1
Case 0
T1 = 12
Ts1 = " AM"
Case 1,2,3,4,5,6,7,8,9,10,11
Ts1 = " AM"
Case 12
Ts1 = " PM"
Case 13,14,15,16,17,18,19,20,21,22,23
T1 = T1 -12
Ts1 = " PM"
End Select

If T1 < 10 Then
T1 = "0" & T1
End If

item.Text = T1 & ":" & Right(Time,5) & Ts1
End Sub
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32564条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。