QT动态实现中英文切换

第一步:打开项目pro文件添加

TRANSLATIONS += myI18N_zh_CN.ts

文件名可以随便取,但是要以  .ts  结尾

第二步:使用lupdate生成  .ts  文件

第三步:使用Qt Linguist完成翻译

第四步,使用lrelease生成.qm文件

第五步:代码实现

主要代码就是加载qm文件,然后显示更新

void MainWindow::onTranslation()
{
    if(!m_bTranslator)
    {
        //  翻译文件
        m_qtTranslator.load(":/qzher_en.qm");
        qApp->installTranslator(&m_qtTranslator);
        ui->retranslateUi(this);
    }
    else
    {
        qApp->removeTranslator(&m_qtTranslator);
        ui->retranslateUi(this);
    }
    m_bTranslator = !m_bTranslator;
}

注意:

  • 文件的路径要么是绝对路径要么是资源文件的路径
  • 这个只能翻译已经存在界面文件的字符串,不能翻译代码中的字符串

 

实例代码可以到我的网盘中下载

链接:https://pan.baidu.com/s/196I0457WonSpkJUN83nkow
提取码:sd0g
复制这段内容后打开百度网盘手机App,操作更方便哦

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章