试用QT中的多语言翻译

试用QT中的多语言翻译

基本原理:
为了在使用多语言,必须做两件事情:
1,把想要翻译的字符串放入tr()中,如 QString str=tr("Legal");
2, 在开始的时候载入预先制作好的翻译文件(.qm)。
以下利用Qt提供的工具,把翻译文件制作出来,并在程序中加载。

实践步骤:
1,在Qt工程文件MyApp.pro中添加一行:TRANSLATIONS=Language_Chn.ts 
     (其中,"Language_Chn"可被你所喜爱的任何名字取代)
 2. 执行   lupdate  MyApp.pro
    (这时,Language_Chn.ts中内容更新了,被tr()标注的字符串被提取出来了)
3 ,   执行 linguist    Language_Chn.ts ,进行编辑,对提取的每个串进行翻译,也就是键入对应字串。在左边面板中列出所有可供翻译的字串,单击之,右边编辑区会显示出来。例如,
   source text :  Save as  
   这时,键入你期望的翻译字符
   Translation : 另存为
  每一项翻译以后,按"Done and Next"按钮确认,如此,直到左边面板中列出所有可供翻译的字串前都被打上“对勾”,说明没有问题了,用"&"定义的快捷键,也需要对应。要不然会显示”问号,感叹号“这说明这做的翻译有问题,需要修改。
4, 在“File”菜单下,单击"Release"项,这会生成我们需要的.qm文件,本例中为Language_Chn.qm
5, 在程序中使用Language_Chn.qm,进行翻译
  QTranslator   translator;
  translator.load("Language_Chn");
  app.installTranslator(&translator);
 重新编译后,执行,英文界面变为中文的了。

 

你可能感兴趣的:(试用QT中的多语言翻译)