引言

经常遇到有客户提出希望能把TestStand用户界面进行本地化。由于用户界面中采用了很多的TestStand UI控件,这些控件的标题文本是随着TestStand的状态变化而自动更新的,因此无法在用户界面编辑状态下像普通控件一样直接进行修改。而如果需要通过编程动态的去更新,这又显得有些复杂了。下面我们来讲一讲,如何本地化它。

1,ini文件的组织特点就是节和键,每一个键有特定的标签,TestStand给每一个标签都赋了常量值,因此如果要增加一种语言的支持,只要找到该标签并修改它的值就可以了。

 2.不过在修改之前,应该先将整个English目录拷贝一份至\Components\Language\目录,并重命名如Chinese,这为添加新的语言包做准备。之后对Chinese目录下的ini文件进行修改,比如经常被修改的文件UIControlString.ini、ModelString.ini。修改完成之后,在序列编辑器的菜单Configure»Station Options»Language中,就发现多了Chinese选项,选择它后重启序列编辑器或用户界面就可以看到本地化的效果。放在目录主要目的是为了系统维护、部署方便,因为目录下的数据不会因为TestStand重装或其它原因导致丢失。

以前面多执行用户界面为例,如果要本地化界面中的命令按钮,只需要在新创建的Chinese目录下,完成如下的修改后,就可以看到汉化的效果了。 1. 使用记事本打开ModelStrings.ini; 2. 搜索Test UUTs,将TEST_UUTS = "Test UUTs"替换为TEST_UUTS = "连续测试"; 3. 搜索Single Pass,将SINGLE_PASS= "Single Pass"替换为SINGLE_PASS= "单次执行"; 4. 保存并关闭文件。 5. 使用记事本打开UIControlStrings.ini, 6. 搜索Open Sequence File,将FILE_OPEN = "&Open Sequence File..."替换为FILE_OPEN = "打开序列文件"; 7. 搜索Close &Sequence File,将FILE_CLOSE_SEQUENCE_FILE="Close &Sequence File"替换为FILE_CLOSE_SEQUENCE_FILE = "关闭序列文件"; 8. 搜索Terminate All,将DEBUG_TERM_ALL = "Terminate All"替换为DEBUG_TERM_ALL="终止所有"; 9. 搜索Lo&gin,将FILE_LOGIN = "Lo&gin..."替换为FILE_LOGIN = "登陆"; 10. 搜索Logo&ut,将FILE_LOGOUT = "Logo&ut"替换为" FILE_LOGOUT = "注销"; 11. 搜索&Run,将EXECUTE_RUN_SELECTED = "&Run %1"替换EXECUTE_RUN_SELECTED = "运行 %1"; 12. 保存并关闭文件。 

本地化,该方法一次性对所有TestStand UI控件进行本地化,不过它只针对TestStand UI控件,对其它非TestStand UI控件的用户界面元素,则需要借助于TSUtil库,下方表格中列举了在不同开发环境中TSUtil库所提供的本地化函数。在TestStand自带全功能用户界面中,都提供了本地化的示例代码,大家可以参考。

 

推荐阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: