Qt程序国际化

qm是qt的语言文件。用qt的languist先制作好ts文件,再生成qm文件,再在qt程序里面加载qm文件即可实现国际化

Qt程序进行国际化时候,主要有三个步骤

生成ts文件

ts文件其格式是XML的,可以通过编译器进行编辑或是linguist语言专家工具进行编辑翻译。

在项目的pro文件中,增加TRANSLATIONS,例如

1
TRANSLATIONS = zh_CN.ts

添加完毕后,在命令行内利用lupdate生成ts文件

1
# lupdate project.pro

运行完毕,即可生成ts文件

linguist翻译ts文件

windows或者mac下可找到linguist程序,运行linguist后打开ts文件,linux则可以直接在命令行运行linguist

1
# linguist zh_CN.ts

打开ts文件后,界面大致如下:

linguist翻译ts文件

左侧为所有待翻译界面或者类中的变量,右上点击要翻译的字符,在右下译文部分对该字符串进行翻译即可。

翻译完成后,即可点击菜单栏的发布,生成qm文件。

程序加载qm文件

生成相应的qm文件后,即可以在程序中加载,例如:

1
2
3
4
QApplication a(argc, argv);
QTranslator translator;
translator.load("zh_CN.qm");
a.installTranslator(&translator);

加载后,即可在界面中显示翻译后的界面。