QT 多语言 中英文切换

news2024/9/24 15:28:38

        本文详细的介绍了利用Qt语言大师工具,实现Qt程序的多国家语言切换。例如新建界面、pro参数、更新翻译、QT预言家翻译语言、翻译中文、翻译英文、发布翻译、核心代码、h源代码、cpp源代码、演示效果等操作。
 

 本文作者原创,转载请附上文章出处与本文链接。

QT 多语言切换目录

1 新建界面

2 pro参数

3 更新翻译

4 QT预言家翻译语言

 5 翻译中文

 6 翻译英文

 7 发布翻译

8 核心代码

8.1 .h源代码

8.2 .cpp源码

9 演示效果


1 新建界面

2 pro参数

        pro文件加入语言文件

TRANSLATIONS =  LanguageChinese.ts \
                LanguageEnglish.ts

3 更新翻译

        QT预言家更新翻译

4 QT预言家翻译语言

 5 翻译中文

        打开翻译文件->目标语言中文->原文译文都写中文->全部确认->保存

 

 6 翻译英文

        打开翻译文件->目标语言中文->原文译文都写中文->全部确认->保存

 

 

 7 发布翻译

 

8 核心代码

8.1 .h源代码

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QFile>
#include <QDebug>
#include <QTranslator>

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private slots:
    void on_pushButton_clicked();

    void on_pushButton_2_clicked();

private:
    Ui::MainWindow *ui;

    QString strFile;
    QTranslator ch;
    QTranslator en;
};
#endif // MAINWINDOW_H

8.2 .cpp源码

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    strFile = "E:/QT/Creator/QLanguage/";
    //加载 翻译文件
    ch.load(strFile + "LanguageChinese.qm");
    en.load(strFile + "LanguageEnglish.qm");
}

MainWindow::~MainWindow()
{
    delete ui;
}

//中文
void MainWindow::on_pushButton_clicked()
{
    qApp->installTranslator(&ch);
    ui->retranslateUi(this);
}
//英文
void MainWindow::on_pushButton_2_clicked()
{
    qApp->installTranslator(&en);
    ui->retranslateUi(this);
}

9 演示效果

10 其它方法

        也可以使用ini文件、xml文件来实现同样的功能,新建两个字段通过全局判断来获取不同的字段来实现多语言切换。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/672630.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:Python文件怎么建立?

Python文件怎么建立&#xff1f; 对于有经验的Python开发人员&#xff0c;创建文件是一个基本的任务。在这篇文章中&#xff0c;我们将讨论如何创建Python文件&#xff0c;包括使用文本编辑器、命令行和集成开发环境&#xff08;IDE&#xff09;。 通过文本编辑器创建Python文…

【在线商城系统】数据来源-爬虫篇

系列文章目录 【在线商城系统】数据来源-爬虫篇 文章目录 系列文章目录前言1、目标2、系统设计3、系统功能3.1、数据建模3.2、数据处理层系统3.2.1、创建Springboot项目3.2.1.1、配置依赖3.2.1.2、Selenium辅助类3.2.1.3、商品分类、商品详情实体类 3.2.2、获取数据3.2.3、获取…

【C++篇】继承和派生

友情链接&#xff1a;C/C系列系统学习目录 知识总结顺序参考C Primer Plus&#xff08;第六版&#xff09;和谭浩强老师的C程序设计&#xff08;第五版&#xff09;等&#xff0c;内容以书中为标准&#xff0c;同时参考其它各类书籍以及优质文章&#xff0c;以至减少知识点上的…

不用手动改 package.json 的版本号

“为什么package.json 里的版本还是原来的&#xff0c;有没有更新&#xff1f;”&#xff0c;这个时候我意识到&#xff0c;我们完全没有必要在每次发布的时候还特意去关注这个仓库的版本号&#xff0c;只要在发布打tag的时候同步一下即可 node.js 部分&#xff0c;我们得有一个…

探索视频文本特征加速检索解决方案——倒排索引

前言 随着视频内容的不断增加&#xff0c;如何快速准确地检索到所需的视频成为了一个重要的问题。而视频文本特征加速检索解决方案——倒排索引&#xff0c;成为了解决这一问题的有效手段。该技术可以加速文本和视频片段特征匹配、相似度排序过程&#xff01; 定义——何为“…

windows -- dos命令

文章目录 内部命令变量常用命令特殊命令符综合案例 外部命令 内部命令 操作系统的内部命令。 win r, 输入cmd 打开命令窗口&#xff1b; 如&#xff1a; dir&#xff0c;查看当前目录下的内容cd&#xff0c;切换目录copy&#xff0c; 拷贝echo&#xff0c;打印 变量 windo…

硬盘被写保护怎么解决

目录 问题描述方法1&#xff1a;使用diskpart清除只读属性方法2&#xff1a;树莓派镜像烧录软件 U盘格式化不了&#xff0c;怎么做呢&#xff1f; 问题描述 方法1&#xff1a;使用diskpart清除只读属性 我是I盘出现了问题&#xff0c;所以我在命令提示符输入&#xff1a; chk…

Spring Cloud Alibaba Seata(一)

目录 一、Seata 1、分布式事务简介 1.1、分布式事务理论 1.2、分布式事务解决方案 2、Seata简介 3、Seata安装 一、Seata 1、分布式事务简介 基础概念&#xff1a;事务ACID A&#xff08;Atomic&#xff09;&#xff1a;原子性&#xff0c;构成事务的所有操作&#xf…

L0到L4级别下的泊车功能设计详解(上)

摘要&#xff1a; 乘用车自动驾驶/辅助驾驶按场景分主要包括城区场景、高速场景和泊车场景。 媳妇和我工作地点一南一北&#xff0c;工作地点公共交通又都不方便&#xff0c;在只有一辆车的背景下&#xff0c;我是早送仙女晚接美人&#xff0c;毫无怨言。但看到今年新车层出不…

Kali Linux 2023.2为Xfce版带来PipeWire支持

Kali Linux 2023.2为Xfce版带来PipeWire支持&#xff0c;彻底改造i3桌面&#xff0c;这个版本还引入了一个新的Hyper-V VM镜像&#xff0c;以及几个新的黑客工具。 Offensive Security宣布了他们流行的道德黑客和渗透测试GNU/Linux发行版的新版本&#xff0c;带来了新的功能&am…

chatgpt赋能python:Python整人代码:开发有趣的恶作剧工具

Python整人代码&#xff1a;开发有趣的恶作剧工具 Python是一种高级编程语言&#xff0c;它有着众多功能库和API&#xff0c;能够用于各种不同的领域。但是&#xff0c;Python也可以用来编写有趣的恶作剧代码&#xff0c;搞乐一下&#xff01;在这篇文章中&#xff0c;我们将介…

通过使用SpringBoot与ElementUI来实现数据的分页功能

背景 分页: 如果一次性的查询全部数据, 响应时间就太长了, 使得浏览器, java虚拟机都有延迟, 用户使用上就会容易出现卡顿:所以就要降低数据库的压力, 使用分页来显示, 一次显示一部分数据 例子: 假设有五条数据, 每一页都显示两条 实现分页要知道: 每页多少条数据当前的页数一…

C++ [STL容器适配器]

本文已收录至《C语言和高级数据结构》专栏&#xff01; 作者&#xff1a;ARMCSKGT STL容器适配器 前言正文容器适配器stack 栈stack的使用stack模拟实现 queue 队列queue的使用queue模拟实现 priority_queue 优先级队列priority_queue的使用priority_queue模拟实现 deque 双端队…

第二章 VGG网络详解

系列文章目录 第一章 AlexNet网络详解 第二章 VGG网络详解 第三章 GoogLeNet网络详解 第四章 ResNet网络详解 第五章 ResNeXt网络详解 第六章 MobileNetv1网络详解 第七章 MobileNetv2网络详解 第八章 MobileNetv3网络详解 第九章 ShuffleNetv1网络详解 第十章…

Debian12中Grub2识别Windows

背景介绍&#xff1a;windows10 debian11,2023年6月&#xff0c;Debian 12正式版发布了。抵不住Debian12新特性的诱惑&#xff0c;我将Debian11升级至Debian12。升级成功&#xff0c;但Debian12的Grub2无法识别Window10。于是执行如下命令&#xff1a; debian:~# update-grub G…

图片加载错误的捕获及处理

引言 前端开发中&#xff0c;图片是我们在网页中加载最多的静态资源类型之一&#xff0c;但是图片加载过程中也有可能出现加载失败的情况&#xff0c;这是十分影响用户体验的。那么如何正确的判断图片是否成功加载&#xff0c;以及图片加载失败的时候&#xff0c;如何处理&…

了解 Dockerfile 和搭建 Docker 私有仓库:让容器化部署变得更简单

目录 1、Dockerfile 1.1什么是Dockerfile 1.2常用命令 1.3使用脚本创建镜像 2、Docker私有仓库 2.1私有仓库介绍&#xff1a; 2.2私有仓库搭建与配置 2.3上传镜像到私有仓库&#xff1a; 1、Dockerfile 1.1什么是Dockerfile Dockerfile是由一些列命令和参数构成的脚本…

【服务器数据恢复】IBM存储分配的卷无法访问的数据恢复案例

服务器故障&#xff1a; 一台IBM DS存储出现故障&#xff0c;存储分配给aix小机的卷无法访问。从底层查看分配给aix小机的3个卷的lvm信息丢失。 服务器数据恢复过程&#xff1a; 1、将存储中所有磁盘编号后取出&#xff0c;以只读方式做全盘镜像&#xff0c;后续的数据分析和数…

【C++篇】字符串:标准库string类

友情链接&#xff1a;C/C系列系统学习目录 知识总结顺序参考C Primer Plus&#xff08;第六版&#xff09;和谭浩强老师的C程序设计&#xff08;第五版&#xff09;等&#xff0c;内容以书中为标准&#xff0c;同时参考其它各类书籍以及优质文章&#xff0c;以至减少知识点上的…

Eyeshot 2023 Added NuGet packages.

Added Microsoft Visual Studio 2022 Extensions menu item.Microsoft .NET 6 Windows Toolbox items.Added NuGet packages.Planar curve projection on Sketch plane.Improved fillet surfaces quality and speed.Added ICurve.ConverToLinearPath() family of methods.   …