QT的语言家使用方法示范

1.1在pro文件中加入说明

c 复制代码
TRANSLATIONS = lang_English.ts 
             

在pri文件中,加入说明,其中"lang_English.ts"与"llang_Chinses.ts"为设置语言文件的名称,这里使用中文与英语两种语言,当你需要其他更多的语言时,添加多个语言文档即可。

1.如果你使用代码给控件命名,就用tr包裹

c 复制代码
label->setText(tr( "Hello World"));

1.1.如果是界面输入的名称,就不用管

3.0 先编译一下

3.然后更新翻译,就会生成.ts文件

如图这样

这里的 .ts文件是一个xml'文件**。我们可以添加到项目

双击打开,就可以看到要翻译的内容。而且我们可以修改xml ''**

二,找到语言家工具

1.1 打开刚才的.ts文件

1.选择界面,2.选中要翻译的,3输入翻译,4,确定,5,发布

发布以后会生成,qm文件

在这里加载

c 复制代码
  QTranslator tran;
    if(tran.load("C:/Users/ycn/Desktop/ycn/test/untitled1/ycn.qm"))
    {
        a.installTranslator(&tran);

    }

然后运行 中文->英文

成功了

三、常见问题

1、QDialogButtonBox翻译不生效问题

这是qt的一个bug,https://bugreports.qt.io/browse/QTBUG-39180

解决方案如下:编辑src/qttranslations/translations/qt_zh_CN.ts,把QDialogButtonBox 替换为 QPlatformTheme, 重新发布即可

相关推荐
问水っ8 分钟前
Qt Creator快速入门 第三版 第四章 布局管理
开发语言·qt·学习
unicrom_深圳市由你创科技1 小时前
Qt、MFC、WinForm、WPF,哪个做上位机界面更好?
qt·wpf·mfc
小小码农Come on9 小时前
Qt Creator + MSVC 2022 64bit 配置 Dump 文件生成与分析流程
数据库·qt
载数而行5209 小时前
QT的五类布局
c++·qt·学习
载数而行52010 小时前
QT的QString类
c++·qt·学习
IOT-Power18 小时前
自动化设备控制系统 / Qt + 嵌入式设备软件
运维·qt·自动化
IOT-Power21 小时前
QT 事件驱动架构
开发语言·qt·架构
umeelove351 天前
使用 Qt 插件和 SQLCipher 实现 SQLite 数据库加密与解密
数据库·qt·sqlite
娇娇yyyyyy1 天前
QT编程(12): QDragEvent事件
qt·microsoft
fareast_mzh1 天前
[MySQL] Package ‘libtirpc‘, required by ‘virtual:world‘, not found
数据库·qt·mysql