要实现的效果,是下拉列表切换中文和English实现按钮文本中英文内容切换。
实现步骤:
1.在VS中鼠标对Translation Files文件右击,选择“添加”--->“模块”.
在弹窗的窗口中选择“Qt”--->“Qt Translation File”。
添加Translation_en.ts和Translation_zh.ts两个文件,分布存储对应的英文和中文翻译。
2.在“扩展”菜单中选择“Qt VS Tools”中的"Lauch Qt Linguist"
从“文件”菜单中选择打开Translation_en.ts文件
将中文翻译为英文然后保存。
3.生成Translation_en.qm文件
右击“Translation_en.ts”文件选择“lrelease”即可生成Translation_en.qm文件。
4.代码实现
QtProject::QtProject(QWidget *parent): QMainWindow(parent)
{ui.setupUi(this);//下拉列表添加选项ui.comboBox->addItem("中文");ui.comboBox->addItem("English");//下列列表绑定槽函数connect(ui.comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(ChangeLanguage(int)));
}void QtProject::ChangeLanguage(int index)
{QTranslator translator_en;bool ret = translator_en.load("Translation_en.qm");if (!ret){//std::cout << "语音配置读取错误!" << std::endl;int a = 0;}QTranslator translator_ch;ret = translator_ch.load("Translation_ch.qm");int index22= ui.comboBox->currentIndex();if (1==index22){App->installTranslator(&translator_en);}else if(0 == index22){App->installTranslator(&translator_ch);}//更新界面ui.retranslateUi(this);
}
源码下载:
Qt界面实现中英文切换资源-CSDN文库