Qt GUI设计 界面语言动态切换(2)

该博客介绍了如何在Qt GUI应用中实现界面语言的动态切换并持久保存,确保程序重启后仍能保留用户的语言设置。通过加载和保存语言配置文件,实现了语言状态的保存与恢复功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

接着上次做的语言切换

上次实现了语言动态切换,但是并不能保存,就是下次打开时语言又会恢复成原来的

这次程序中加入语言配置文件,每次语言修改会记录保存,下次打开时语言就是上次保存的。

代码如下

#include "dialog.h"

#include "ui_dialog.h"
#include <QDebug>
#include <QTranslator>
#include <iostream>
#include <QtCore>
 
Dialog::Dialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Dialog)
{
  
  
    ui->setupUi(this);
    this->setWindowTitle(tr("hello translator"));
    connect(this->ui->pushButton_2,SIGNAL(clicked()),this,SLOT(close()));
    connect(this->ui->comboBox,SIGNAL(activated(int)),SLOT(switchlanguage(int)));
 
    connect(this->ui->pushButton_chinese,SIGNAL(clicked()),SLOT(to_chinese()));
    connect(this->ui->pushButton_english,SIGNAL(clicked()),this,SLOT(to_english()));
}
 
Dialog::~Dialog()
{
  
  
    delete ui;
}
 
void Dialog::switchlanguage(int flag)
{
  
  
    qDebug("flag=%d",flag);
 
    QTranslator translator(qApp);

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值