技术论坛

 Wincc VBA瞬间解决旧项目导入遗留问题

返回主题列表
作者 主题
龟仙人
奇侠

经验值:8538
发帖数:939
精华帖:15
楼主    2022-03-30 08:20:15
主题:Wincc VBA瞬间解决旧项目导入遗留问题 精华帖 

    以前用Wincc6.2做的项目要转到V7.x,一步步的从6.2转到V7.0,再转到7.4,但是有些文字显示不出来,咨询了西门子客服之后,要添加一个台湾中文到文本框,添加完成之后大部分文本都能够显示出来了,但是存在一个问题,按钮上的文字是中文简体,而静态文本是台湾中文,运行的时候总不可能运行两种文本,运行简体中文静态文本是问号,运行繁体中文按钮又是问号,而且就算把文字手动修改,文字的字体、大小、粗体、下划线等属性都要跟着改一遍,工作量相当的大。上周日学了一天的VBA决定VBA可以解决这个问题,本来的思路是通过切换开发环境语言,然后遍历所有静态文本,把静态文本的字体、大小、粗体、下划线等属性存储在数组中,然后再切缘语言将保存在数组中的属性赋值给静态文本。今天看VBA帮助的时候,发现有LDTexts(Index)和LDFonts(Index)属性,这两个属性的Index代表着不同语言,但是Index对应的语言是不确定的,所以在变量第一个静态字体时先判断Index和LanguageID的对应关系,2052是中文简体,1028时台湾繁体,1031为英语,判断完成之后再进行替换,一秒钟都用不了所有静态文本被替换完成,文字大小格式也都没有改变,全部照着台湾繁体的格式复制过来。






龟仙人
奇侠

经验值:8538
发帖数:939
精华帖:15
1楼    2022-03-30 08:32:29
精华帖  主题:回复:Wincc VBA瞬间解决旧项目导入遗留问题

使用VBA,首先打开画面,找到工具菜单下的——宏——VBA编辑器


然后在ProjectTemplate模板下输入代码和窗体,ProjectTemplate下的程序和脚本运行在画面窗口中,

建立菜单脚本:


替换字体和格式脚本:


代码输入完成后,运行脚本,画面窗口出现自定义菜单如下图所示,


项目文件到百度网盘下载:

链接:https://pan.baidu.com/s/1lHokM74UwOY8Vo3KJJWqqg 

提取码:u0xf


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