Qt学习笔记-国际化
生活随笔
收集整理的這篇文章主要介紹了
Qt学习笔记-国际化
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
主要代碼如下:
#include "widget.h" #include <QApplication> #include <QTranslator> #include <QLocale> #include <QDebug>int main(int argc, char *argv[]) {QApplication a(argc, argv);QTranslator translator;QString string=QLocale::system().name();qDebug()<<string;if(string=="zh_CN"){translator.load(":/myI18N_zh_CN.qm");a.installTranslator(&translator);}Widget w;w.show();return a.exec(); }ui界面如下:
當把系統字符集改成英文時:
運行程序如下:
當為中文時,如下所示:
具體操作如下:
在Qt中編寫代碼時要對需要顯示的字符串調用tr()函數,完成代碼編寫后,對這個應用程序的翻譯
主要包含三步:
1.運行lupdate工具從C++源代碼中提取要翻譯的文本,這時會生成一個.ts文件,這個文件是XML
格式的;
2.在Qt Linguist中打開.ts文件,并完成翻譯工作;
3.運行lrelease工具從.ts文件中獲得.qm文件,它是一個二進制文件。這里的.ts文件是供翻譯人員使
用的,而在程序運行時只需要使用.qm文件,這兩個文件都是與平臺無關的。
最后用:
Linguist即可:
他會生成一個.qm的文件,然后直接加載,就可以了,
翻譯前,要在項目文件中指定生成的.ts文件,每一種翻譯語言對應一個.ts文件。打開項目的.pro文件,在最后面添加如下一行代碼:
TRANSLATIONS = myI18N_zh_CN.ts
這表明后面生成的.ts文件的文件名為“myI18N_zh_CN.ts”,對于.ts的名稱可以隨意編寫,不過一般是以區域代碼來結尾,這樣可以更好的區分,例如這里使用了“zh_CN”來表示簡體中文。最后按下Ctrl+S保存該文件。
總結
以上是生活随笔為你收集整理的Qt学习笔记-国际化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt文档阅读笔记-Label QML T
- 下一篇: Qt工作笔记-发送端发送Json格式的数