搬家第一天 | 您所在的位置:网站首页 › wincc报警弹窗实现 › 搬家第一天 |
Wincc 提供了多语言功能,此文本介绍了 Wincc 常用控件的双语言制作方法。项目在中文版wincc V7.3 平台开发,wincc 安装时,选择了英文(美国)和中文。程序只是实验多语言功能,不对单词拼写和语法做讨论。
1. 全项目语言修改 界面上放置两个按钮,一个用于转换成英文,一个用于转换成中文。转换为英文的 vbs 脚本 。 Sub OnClick(ByVal Item)Dim objTrend,sliderSet objTrend=ScreenItems("OT") ‘在线趋势控件 HMIRuntime.Language =&H0409 ‘设置项目运行语言为英文 objTrend.TrendIndex =0objTrend.TrendReName ="water flow" ‘设置趋势 1 文字显示 objTrend.TrendIndex =1objTrend.TrendReName ="air water" ‘设置趋势 2 文字显示 Set slider=ScreenItems("slider1")slider.caption="Water Flow" ‘设置滑块 1 头部文字显示 Set slider=ScreenItems("slider2")slider.caption="Air Flow" ‘设置滑块 2 头部文字显示 Set objTrend=NothingSet slider=Nothing End Sub
转换为中文的 vbs 脚本 Sub OnClick(ByVal Item) Dim objTrend,slider Set objTrend=Screenitems("OT") ‘在线趋势控 HMIRuntime.Language =&H0804 ‘设置项目运行语言为中文 objTrend.TrendIndex =0 objTrend.TrendRename ="水流量" ‘设置趋势1 文字显示 objTrend.TrendIndex =1 objTrend.TrendRename ="空气流量" ‘设置趋势 2 文字显示 Set objTrend=Nothing Set slider=ScreenItems("slider1") slider.caption="水流量" ‘设置滑块1 头部文字显示 Set slider=ScreenItems("slider2") slider.caption="空气流量" ‘设置滑块 2 头部文字显示 Set objTrend=Nothing Set slider=Nothing End Sub
. 按钮控件页面上添加按钮控件后,按钮属性‐字体‐文本,填写中文文字,然后页面菜单视图‐语言,选择英语(美国),按钮上文字会变成?,然后在按钮属性‐字体‐文本,填写英文文字。
3. 静态文本控件 页面上添加静态文本控件后,按钮属性‐字体‐文本,填写中文文字,然后页面菜单视图‐语言,选择英语(美国),静态文本文字会变成?,然后在静态文本属性‐字体‐文本,填写英文文字。
4. 滑块控件滑块控件界面上只有顶部的文字标识涉及语言转换,这个转换不能仿照按钮和静态文本进行,需要编程(见 1.脚本)。5. 弹出消息在按钮的点击事件中加入以下VBS 脚本 Sub OnClick(ByVal Item) If HMIRuntime.Language =&H0409 Then ‘如果是英文 Msgbox "this is a english message" Else If HMIRuntime.Language =&H0804 Then ‘如果是中文 Msgbox "这是一条中文信息" End If End if End Sub
其中HMIRuntime.Language 获取当前运行项目语言环境,&H0409为7.3 版本Wincc 英文语言代码,&H0804 为7.3 版本Wincc 中文语言代码,&H0804 为7.3 版本Wincc 中文语言代码,&H0804 为7.3 版本Wincc 中文语言代码,重要事件说三遍,因为网上查询不少结果说&H0404 是中文语言代码,那可能指的是是以前版本wincc。
6. 趋势和标尺表格控件 趋势控件运行时界面上无需修改参数,主要是标尺表格控件,其界面语言文字通过脚本修改。
7.. 在线表格控件和报警控件 在控件说在页面打开事件中,写入一下vbs 脚本Sub OnOpen()Dim objtableSet objtable=ScreenItems("OT")If HMIRuntime.Language =&H0804 Then '如果当前是中文 '设置在线表格控件界面语言 objtable.valuecolumnindex =0 ‘设置在线表格控件数值列第 1 列 objtable.valuecolumnrename ="水流量" ‘数值列第1 列文字显示 objtable.valuecolumnindex =1 ‘设置在线表格控件数值列第2 列 objtable.valuecolumnrename ="空气流量" ‘数值列第 2 列文字显示 objtable.TimeColumnIndex=0 ‘设置在线表格控件时间列第1 列 objtable.TimeColumnRename ="日期/时间" ‘时间列第 1 列文字显示 Set objtable=Nothing Else If HMIRuntime.Language =&H0409 Then '设置在线表格控件界面语言 objtable.valuecolumnindex =0 ‘设置在线表格控件数值列第1 列 objtable.valuecolumnrename ="Water Flow" ‘数值列第 1 列文字显示 objtable.valuecolumnindex =1 ‘设置在线表格控件数值列第 2 列 objtable.valuecolumnrename ="air Flow" ‘数值列第2 列文字显示 objtable.TimeColumnIndex=0 ‘设置在线表格控件时间列第1 列 objtable.TimeColumnRename ="Date/Time" ‘时间列第 1 列文字显示 Set objtable=Nothing End IfEnd IfEnd Sub报警控件需要在编辑状态下中英文两种语言环境输入消息文本信息,如下图。 8. 菜单控件 菜单控件做界面语言切换功能需要借助编程,新建一个项目模块,使用VBS 脚本添加动作脚本如下Sub SwitchLanguage (Byval Item) Dim language language=Item.userdata HMIRuntime.Language =language End Sub 设置英文的菜单项,用户数据填入&H0409,设置英文的菜单项,用户数据填入&H0804,,二者的脚本项为 SwitchLanguage,可以分配国旗图片使界面好看一点。 |
CopyRight 2018-2019 实验室设备网 版权所有 |