QT国际化--QT CREATE项目

把需要国际化的工程项目中需要国际化的字符串加上tr标记,如需要国际化消息框,如源码是:
 
  
QMessageBox::information(this,"title","This messagebox context");
那么如果需要国际化的话需要将代码改成:
QMessageBox::information(this,tr("title"),tr("This messagebox context"));
进入到项目文件加下,比如项目名字为Test.pro,那么就先执行lupdate Test.pro,执行这步之后就会生成Test_zh_CN.ts文件

接下来用 linguist打开上一步生成的Test_zh_CN.ts文件,编辑需要翻译的,编译完之后用lrelease Test_zh_CN.ts命令生成.qm文件,即Test_zh_CN.qm文件

在QTCreate人里面编译调试的时候需要将Test_zh_CN.qm文件放到和Test同目录下的Test-build-desktop-Qt_4_8_1_for_Desktop_-_MSVC2010__Qt_SDK____的目录里面,即将该文件和MakeFile放在同一个目录下,否则会失败的。发布后的程序则需要把该文件和.exe文件放一起。

在程序的最开始加载翻译文件:
QApplication a(argc, argv);
QTranslator translator(0);
translator.load("Test_zh_CN.qm",".");
a.installTranslator(&translator);

需要注意的是这个是需要在声明QApplication对象之后,立即加载翻译的,否则就会出错。


PS:http://blog.csdn.net/derryzhang/article/details/4872437

你可能感兴趣的:(create)