对字符串使用tr包含起来,因为tr是QObject的一个静态函数,所以它可以直接调用。
在生成language.ts文件之前应该编辑.pro文件,如下:
QT += core guigreaterThan(QT_MAJOR_VERSION, ): QT += widgetsTRANSLATIONS=language_en.tsTARGET = NetByteSender
TEMPLATE = app
然后,进入到工程目录中,运行
E:\Projects\qt\NetByteSender>e:\qt\Qt5.3.2\5.3\mingw482_32\bin\lupdate.exe NetBy
teSender.pro
Updating 'language_en.ts'...
Found source text(s) ( new and already existing)
Kept 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>
如何翻译成中文呢?
(待补充)