-
Qt5翻译基础工程-Translate-Ubuntu.tar.gz下载
资源介绍
http://blog.****.net/yulinxx/article/details/43260203
------------------------------------------
C++
国际化!!!!!
创建一个空白的Qt工程
添加一个main.cpp
#include
#include
#include
#include
int main(int argc, char *argv[])
{
QApplication a(argc, argv)
QWidget* pWnd = new QWidget();
QPushButton* pBtn = new QPushButton(QPushButton::tr("Test Translate"))
QVBoxLayout* pVlayout = new QVBoxLayout();
pVlayout->addWidget(pBtn)
pWnd->setLayout(pVlayout);
pWnd->show();
return a.exec();
}
即可运行起来。。。。 此工程中,只有按钮上有文字。。。运行如下图示:
在工程中加入: TRANSLATIONS += testTrans_en.ts (ts文字名可随意取)
然后执行: Tools -> External -> Linguist -> Update Translations(lupdate)
提示完成: /usr/local/Qt5.4.0/5.4/gcc_64/bin/lupdate" finished
在工程中,可以发现多了一个 testTrans_en.ts 文件,此文件可用文本编辑器打开进行查看,如:
QPushButton
此步骤是将工程中的文字(加tr等包含的文字)进行提取到ts文件中
接下来,在终端运行 x@x:~$ linguist 打开 Qt Linguist 翻译工具,对文字进行逐个翻译并保存
在工程中再执行: Tools -> External -> Linguist -> Release Translations(lrelease)
结果提示:/usr/local/Qt5.4.0/5.4/gcc_64/bin/lrelease" finished
在工程中,可以发现多了一个 testTrans_en.qm文件,此文件为二进制格式文件,即我们最终使用的翻译文件
然后添加Qt资源,将testTrans_en.qm添加进来
修改main.cpp文件,将翻译文件添加进来,最终执行
#include
#include
#include
#include
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTranslator qtTranslator;
qtTranslator.load(":/translate/testTrans_en.qm")
a.installTranslator(&qtTranslator);
QWidget* pWnd = new QWidget();
QPushButton* pBtn = new QPushButton(QPushButton::tr("Test Translate"))
QVBoxLayout* pVlayout = new QVBoxLayout();
pVlayout->addWidget(pBtn)
pWnd->setLayout(pVlayout);
pWnd->show()
return a.exec()
}
最终执行结果:
- 上一篇: 微信小程序flex布局demo
- 下一篇: 微信小程序-FlexLayout布局.zip