zoukankan      html  css  js  c++  java
  • 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();
    }

      

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

    lupdate Smart.pro

    edit cn.ts

    Qt linguist file release

  • 相关阅读:
    组合模式
    迭代器模式
    模板方法模式
    外观模式
    适配器模式
    运行mysql时,提示Table ‘performance_schema.session_variables’ doesn’t exist
    idea maven 打包 引用本地jar
    centos7 安装redis
    centos7 防火墙
    linux 常用命令
  • 原文地址:https://www.cnblogs.com/wiessharling/p/2935715.html
Copyright © 2011-2022 走看看