使用Qt Designer生成的界面进行国际化编程

来源:互联网 发布:数组中重复次数最多的 编辑:程序博客网 时间:2024/05/22 07:06
Qt Designer国际化需要做的操作
  • 首先,提取源文件中要翻译的字符串生成.ts文件,手动翻译,生成一个.qm文件。
  • 其次,程序中使用QTranslator安装翻译文件。

具体步骤如下:

 1、新建工程文件 .pro,文件格式如下:
         SOURCES += main.py     #main.py文件为导入main.ui 文件的py文件
         FORMS += main.ui        #main.py文件是用Designer生成的ui文件
         TRANSLATIONS += zh_cn.ts  #即将生成的中文翻译文件

2、利用PySide下的pyside-lupdate.exe进行翻译文件提取:
         命令行语句为:
               pyside-lupdate main.pro
         在当前目录下会生成一个zh_cn.ts(main.pro中TRANSLATIONS的值),文件为XML格式。

3、使用QtLinguist翻译zh_cn.ts文件进行逐项翻译,并发布为.qm文件。
      (1)选择翻译的语言:编辑--翻译文件设置 --选择目标语言。
      (2)对列出的字符串进行逐项翻译,保存。每个字符串翻译完成后需要勾选工具栏上的勾号,将其设置为Finfished状态。
      (3)生成.qm文件:文件--另发布为...--保存为qm Qt Designer的I18N文件。
             也可以使用 PySide安装目录下的lrelease进行翻译: 
                    lrelease    zh_cn.ts,
               这样会在当前目录下生成一个 zh_cn.qm的翻译文件
示图如下:




4、将zh_cn.qm加载到程序当中去,这样即可实现程序国际化。
     将下面程序添加到主程序中:
       import sys
    app = QtGui.QApplication(argv)
    myappTranslator = QtCore.QTranslator()
    myappTranslator.load( "zh_cn.qm")
    app.installTranslator(myappTranslator)  
    mainwindow = MyWidget() #main.py文件中的窗口
    sys.exit(app.exec_())
0 0
原创粉丝点击