首页 > 代码库 > QT界面应用程序的语言国际化

QT界面应用程序的语言国际化

对字符串使用tr包含起来,因为tr是QObject的一个静态函数,所以它可以直接调用。

在生成language.ts文件之前应该编辑.pro文件,如下:

QT       += core guigreaterThan(QT_MAJOR_VERSION, 4): QT += widgetsTRANSLATIONS=language_en.tsTARGET = NetByteSenderTEMPLATE = app

然后,进入到工程目录中,运行

E:\Projects\qt\NetByteSender>e:\qt\Qt5.3.2\5.3\mingw482_32\bin\lupdate.exe NetByteSender.proUpdating language_en.ts...    Found 31 source text(s) (2 new and 29 already existing)    Kept 2 obsolete entries

这时可以看到目录下多了一个language_en.ts文件,里面的内容就是我们要翻译的文字。

...    </message>    <message>        <location filename="netbytesender.cpp" line="119"/>        <source>listen</source>        <translation type="unfinished"></translation>    </message></context><context>    <name>QMessageBox</name>    <message>        <location filename="netbytesender.cpp" line="109"/>        <source>NetByteSender</source>        <translation type="unfinished"></translation>    </message></context></TS>

如何翻译成中文呢?

(待补充)

 

QT界面应用程序的语言国际化