参考文献1
参考文献2
制作UI的过程中,会有需要保存UI画面状态的需求,例如,保存文本框的内容,保存勾选框的状态等,除了使用txt进行读写外,还可以使用QSetting类将UI状态保存到配置文件.ini中
- QSetting的初始化
使用配置文件路径进行初始化:
QSettings textSet("./textSet.ini", "Value");//第二个参数名字无所谓
- QSetting的读取
QSettings提供了静态函数对配置进行读取和设置。
使用vaule()读取,value()第二个参数可用来指定默认值:
使用时最好加上默认值,因为首次读取可能会出现问题。
ui->lineEdit->setText(textSet.value("testText" , default_text).toString());
- QSetting的写入
使用 setValue() 函数可以将键值对存储到配置文件中:
textSet.setValue("testText" , ui->lineEdit->text());
完整代码
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QSettings>//头文件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());//按下按键就写入到配置文件
}