您的位置:首页 > 编程语言 > Qt开发

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

2014-08-12 14:19 190 查看
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)
[align=left] myappTranslator = QtCore.QTranslator()[/align]
[align=left] myappTranslator.load( "zh_cn.qm")[/align]
[align=left] app.installTranslator(myappTranslator) [/align]
[align=left] mainwindow = MyWidget() #main.py文件中的窗口[/align]
[align=left] sys.exit(app.exec_())[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: