Qt界面--多语言国际化的实现

步骤如下:

(1) 首先是准备一个已经编译成功的工程,并且界面中的需要多语言支持的界面元素均使用了“tr()”函数。

(2) 修改main()函数

Qt界面--多语言国际化的实现

  1. QApplication a(argc, argv);  

后添加以下代码

  1. QString translatorFileName = "basiclayout_zh.qm";    
  2. QTranslator *translator = new QTranslator(&a);  
  3. if (translator->load(translatorFileName))    
  4. {  
  5.     a.installTranslator(translator);  
  6. }  

Qt界面--多语言国际化的实现由于用到QTranslator类,引入该类的头文件

  1. #include <QTranslator>  

(3)重新编译工程。点击菜单“Qt”-> “Create new Translation File”,然后可以在解决方案管理器中看到新生成的文件“basiclayout_zh.ts”。

4)双击文件“basiclayout_zh.ts”,打开Qt Linguist界面

Qt界面--多语言国际化的实现

(5) 翻译界面中部的翻译栏,两行:第一行:源文   第二行:译文  , 在第二行进行相应的翻译,翻译完后点击“确定下一个”Qt界面--多语言国际化的实现按钮。

6) 翻译完所有选项后,点击文件--->发布, 生成 .qm 文件。

(7) 运行程序,得到翻译后的界面。



所有操作实现执行了三个命令:

  1. lupdate –verbose testprj.pro       //生成相应的.ts 文件  
  2. linguist                           //启动Linguist语言翻译工具,可以翻译相应可见字符串  
  3. lrelease –verbose testprj.pro      //将翻译好的文件生成.qm文件  
作者:韩兆新
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
标签: Qt杂谈

本文转自韩兆新博客博客园博客,原文链接:http://www.cnblogs.com/hanzhaoxin/archive/2012/11/15/2771950.html,如需转载请自行联系原作者