Qt6.5.3 Cmake配置国际化多语言切换

1、在项目目录创建新文件夹languages用于存放生成的文件

2、在CMakeLists.txt文件中添加下列代码,zh_CN.ts和en_US.ts文件名可以自行修改

set(TS_FILES
    "${CMAKE_SOURCE_DIR}/languages/zh_CN.ts"
    "${CMAKE_SOURCE_DIR}/languages/en_US.ts"
)
find_program(LUPDATE_EXECUTABLE lupdate)
find_program(LRELEASE_EXECUTABLE lrelease)

foreach(_ts_file ${TS_FILES})
    execute_process(
        COMMAND ${LUPDATE_EXECUTABLE} -recursive ${CMAKE_SOURCE_DIR} -ts ${_ts_file})
    execute_process(
        COMMAND ${LRELEASE_EXECUTABLE} ${_ts_file})
endforeach()

3、执行Cmake

4、然后languages文件中就会生成对应的.ts和.qm文件

5、添加资源这种小事情我相信各位大佬都会,这里就跳过了

6、添加切换语言的按钮或者是其他方法,根据自己实际情况而定,在.cpp/.c文件中的汉字使用tr(),在UI里直接输入的汉字自动附有tr()不需要担心,只需给代码里的汉字加tr()就OK了

 比如:
 messageBox.setText(tr("你需要帮助吗?"));

7、每次修改汉字后都需要重新执行Cmake,然后使用Linguist进行编辑或者直接右键qt语言家开始翻译,我习惯用第二中

8、设置源语言与目标语言

9、在该页面完成翻译工作,如果是大量的翻译工作或者是给第三方,我发现了一个大佬上传的小工具可以将.ts文件与excel文件相互转换的功能,大佬链接在这里但是要vip从excel中导入数据至QT翻译文件_Qt根据其他ts文件进行翻译资源-CSDN文库

链接https://pan.baidu.com/s/1JPTFzgap2LRdvBABTKil1A?pwd=qhfv:  提取码: qhfv 

10、保存

11、发布

12、在代码里实现对.qm文件的调用,我这里使用的是按钮切换,具体根据个人情况而定


//示例代码
void MainWindow::on_English_clicked()
{
    qDebug() << "English" << __LINE__;
   QTranslator *translator = new QTranslator(this);
// 这里的路径是你.qm资源文件存放的路径,记得修改
    if (translator->load(":/res/languages/en_US.qm")) {
        QApplication::removeTranslator(translator); 
        QApplication::installTranslator(translator);
        currentLanguage = "en_US";
        ui->retranslateUi(this);
    }
}


void MainWindow::on_Chinese_clicked()
{
    qDebug() << "Chinese" << __LINE__;
    QTranslator *translator = new QTranslator(this);
    if (translator->load(":/res/languages/zh_CN.qm")) {
        QApplication::removeTranslator(translator);
        QApplication::installTranslator(translator);
        currentLanguage = "zh_CN";
        ui->retranslateUi(this);
    }
}

13、运行后的效果

特别提示:如果代码里汉字修改后打开Qt语言家没有找到,执行CMake应该就可以了。

### 配置 Desktop Qt 6.5.3 和 MSVC2019 编译器 为了在 Qt Creator 中成功配置并使用 Desktop Qt 6.5.3 和 MSVC2019 编译器,需遵循一系列具体操作来确保开发环境的正确搭建。 #### 安装必要的组件 安装 Visual Studio 并选择适用于桌面应用的 C++ 工具集。这一步骤至关重要,因为 MSVC 是 Microsoft 提供的一组用于编写 Windows 应用程序的工具[^3]。 #### 设置 Qt 版本 启动 Qt Maintenance Tool 来安装指定版本的 Qt(即 Qt 6.5.3)。确保选择了与所选编译器相匹配的模块,在此情况下应为 msvc2019_64 组件。完成安装后,Qt 将自动识别新添加的库文件和头文件路径[^1]。 #### 创建或编辑构建套件 进入 Qt Creator 的选项菜单,导航至“Build & Run”,在这里可以管理 Kits、Compilers 及 Debuggers: - **Kits**: 添加新的 Kit 或修改现有 Kit。对于 Desktop Qt 6.5.3 (MSVC2019),确认已勾选合适的 Qt 版本以及关联的 Compiler。 - **Compilers**: 如果未检测到 MSVC2019,则手动添加它。通过浏览找到 vcvarsall.bat 文件的位置,通常是 `C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build` 下面的一个批处理脚本。执行该命令可初始化所需的环境变量以便于后续编译过程正常工作。 - **Debuggers**: 同样地,如果缺少调试器支持,也需要在此处进行相应配置。一般而言,默认随附的 WinDbg 调试器已经足够满足日常需求。 #### 解决潜在错误 当尝试使用上述配置时可能会遇到某些问题,比如由于编译器不符合要求而导致无法解析预处理器指令的情况。针对此类情形,可以在项目 .pro 文件内加入如下设置以强制启用所需标准特性: ```qmake QMAKE_CXXFLAGS += /std:c++17 /Zc:__cplusplus ``` 这段代码告诉 qmake 在调用 cl.exe 进行实际编译之前传递额外参数给后者,从而解决因缺乏适当宏定义而产生的警告或错误信息。 #### 测试配置有效性 最后,新建一个简单的测试工程验证整个流程是否顺畅无阻。按照常规方式创建应用程序模板之后立即运行一次完整的构建周期;如果没有意外的话应该能够顺利生成目标二进制文件并且没有任何严重告警提示出现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我于人间凑数

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值