【笔记1-4】Qt系列:使用QSetting保存画面状态

参考文献1
参考文献2

制作UI的过程中,会有需要保存UI画面状态的需求,例如,保存文本框的内容,保存勾选框的状态等,除了使用txt进行读写外,还可以使用QSetting类将UI状态保存到配置文件.ini中

  1. QSetting的初始化
    使用配置文件路径进行初始化:
QSettings textSet("./textSet.ini", "Value");//第二个参数名字无所谓
  1. QSetting的读取

QSettings提供了静态函数对配置进行读取和设置。
使用vaule()读取,value()第二个参数可用来指定默认值:
使用时最好加上默认值,因为首次读取可能会出现问题。

ui->lineEdit->setText(textSet.value("testText" , default_text).toString());
  1. QSetting的写入
    使用 setValue() 函数可以将键值对存储到配置文件中:
textSet.setValue("testText" , ui->lineEdit->text());

完整代码

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include //头文件

QSettings textSet("./textSet.ini", "Value");//初始化QSetting
QString default_text = "qwe";//默认值

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    ui->lineEdit->setText(textSet.value("testText" , default_text).toString());//读取配置并显示到文本框
}

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

void MainWindow::on_pushButton_clicked()
{
   textSet.setValue("testText" , ui->lineEdit->text());//按下按键就写入到配置文件
}

你可能感兴趣的:(Qt相关,笔记,qt)