试用QT中的多语言翻译

    技术2022-05-20  57

    基本原理:为了在使用多语言,必须做两件事情: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.qm5, 在程序中使用Language_Chn.qm,进行翻译  QTranslator   translator;  translator.load("Language_Chn");  app.installTranslator(&translator); 重新编译后,执行,英文界面变为中文的了。


    最新回复(0)