使用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]
首先,提取源文件中要翻译的字符串生成.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]
相关文章推荐
- 使用Qt Designer生成的界面进行国际化编程
- linux下Eclipse进行C编程时动态链接库的生成和使用
- 【ARM-Linux开发】linux下Eclipse进行C编程时动态链接库的生成和使用
- 使用epoll进行高性能网络编程(收藏)
- 使用 .NET 对事件进行编程
- 在Eclipse中使用SWT进行界面设计
- 使用 .NET 对事件进行编程以及VS.NET 2003 有那些新特性
- 使用 Microsoft Visual C# 进行 Microsoft Word 2002 和 Excel 2002 编程
- 使用NUnit在.Net编程中进行单元测试
- 使用NUnit在.Net编程中进行单元测试(转载)
- 使用epoll进行高性能网络编程
- 使用Eclipse进行SWT编程(2)
- 使用IntraWeb进行Web编程
- 使用Eclipse进行SWT编程(3)
- 使用Eclipse进行SWT编程(4)
- 在Eclipse中使用SWT进行界面设计
- 使用NUnit在.Net编程中进行单元测试
- 使用C#进行Word 2002和Excel 2002编程
- 使用 Web Services Enhancements 2.0 进行编程
- 使用Mono进行.NET开源编程