Qt多国语言的实现与切换(国际化)


1、创建语言文件

  打开.pro文件,加入以下:

TRANSLATIONS+=cn.ts

  工具->外部->Qt语言家->更新翻译,将生成翻译文件cn.ts

2、编辑翻译文件

  启动Linguist(Qt语言家),打开cn.ts,然后进行编辑,主要是将源文对应的译文填写上,最后保存

3、部署翻译文件

  工具->外部->Qt语言家->部署翻译,将生成语言文件qm

4、加载翻译文件

    QTranslator translator;
    bool b = false;
    b = translator.load("cn.qm");
    a.installTranslator(&translator);

注:随时可以重复“2”~“3”步骤以便更新翻译

5、切换不同多国语言

void MainWindow::Refresh()
{
    ui->listWidget->addItem(tr("item1"));
    ui->listWidget->addItem(tr("item2"));
    ui->listWidget->addItem(tr("item3"));
}

void MainWindow::on_pushButton_clicked()
{
    QTranslator translator;
    bool b = false;
    b = translator.load("cn.qm");
    qApp->installTranslator(&translator);
    this->Refresh();
}

void MainWindow::on_pushButton_2_clicked()
{
    QTranslator translator;
    bool b = false;
    b = translator.load("cn2.qm");
    qApp->installTranslator(&translator);
    this->Refresh();
}

  

  经此一用,中文到控件上乱码的问题也顺带完美解决了,享受了一次轻松多国语实现的过程。

 

  

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM