Qt ini配置文件

ini文件用于保存用户的设置操作,下列以背景颜色设置为例子

暂时默认设置为白色背景

这段代码放置在主窗口的构造函数中,用于初始化读取ini文件

cpp 复制代码
    QString color;
    //第一个参数在我这里ini文件时相对路径需要放在工程中,也可以写绝对路径
    QSettings *set = new QSettings("color.ini",QSettings::IniFormat);
    set->beginGroup("backgroundcolor");
    color = set->value("color","").toString();
    set->endGroup();
    delete  set;

    this->setStyleSheet(QString("background:'%1'").arg(color));

对应点击按钮的槽函数:

cpp 复制代码
void MainWindow::on_pushButton_clicked()
{
    QColor color;
    color = QColorDialog::getColor(Qt::white,this," Choose color",QColorDialog::ShowAlphaChannel);
    
    if(color.isValid()){  //如果颜色无效则不保存。
        this->setStyleSheet(QString("background:'%1'").arg(color.name()));

        QSettings *set  = new QSettings("color.ini",QSettings::IniFormat);
        set->beginGroup("backgroundcolor");
        set->setValue("color",color.name());
        set->endGroup();
        delete  set;
    }
}

color.isValid()函数用以解决当用户在对话框中没有选择Cancel 或者直接关闭窗口时,变为读取ini文件时,变为全黑色。

打开对话框选择为绿色后:

此时ini文件内容为:

相关推荐
笑鸿的学习笔记17 分钟前
qt-C++语法笔记之Stretch与Spacer的关系分析
c++·笔记·qt
钢铁男儿8 小时前
PyQt5高级界而控件(容器:装载更多的控件QDockWidget)
数据库·python·qt
追烽少年x19 小时前
Qt中的QProcess类
qt
轩情吖20 小时前
Qt的第一个程序(2)
服务器·数据库·qt·qt creator·qlineedit·hello world·编辑框
心愿许得无限大1 天前
Qt 常用界面组件
开发语言·c++·qt
机器视觉知识推荐、就业指导1 天前
Qt 与Halcon联合开发八: 结合Qt与Halcon实现海康相机采图显示(附源码)
开发语言·数码相机·qt
charlie1145141911 天前
如何使用Qt创建一个浮在MainWindow上的滑动小Panel
开发语言·c++·qt·界面设计
cpp_learners1 天前
QML与C++交互之创建自定义对象
c++·qt·qml
算法练习生1 天前
Qt核心类QWidget及其派生类详解
开发语言·c++·qt
程序员爱钓鱼2 天前
【无标题】Go语言中的反射机制 — 元编程技巧与注意事项
开发语言·qt