-
需要翻译的字符串用
tr()
包括,QtDesign设计的ui勾选可翻译 -
pro文件中加入ts
.pro
TRANSLATIONS = resources/translation/Translation_EN.ts \
resources/translation/Translation_CN.ts
-
点击更新翻译
-
QtLinguist打开生成的ts文件,输入对应翻译,后点击发布生成qm文件
-
qm文件放在项目的build目录下
-
comboBox实时加载cpp
void AboutDialog::seleteComboBoxSlot(int index)
{
QTranslator translator;
switch(index)
{
case 0:
if (translator.load("Translation_EN.qm"))
{
QApplication::installTranslator(&translator);
ui->retranslateUi(this);
this->setWindowTitle("About"); // retranslateUi不能更新窗口Title
} else {
qDebug()<<"Load Translate file fail";
}
break;
case 1:
if (translator.load("Translation_CN.qm"))
{
QApplication::installTranslator(&translator);
ui->retranslateUi(this);
this->setWindowTitle("关于");
} else {
qDebug()<<"Load Translate file fail";
}
break;
default:
break;
}
}