码迷,mamicode.com
首页 > 其他好文 > 详细

Qt : Setting应用程序的数据保存和读取

时间:2020-05-08 19:58:57      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:frame   setting   int()   系统   his   val   打开   类型   eset   

使用setting 可以将应用程序关闭前的数据都保存到系统的注册表当中 ,

并且下次再打开程序时可以冲注册表中读取上一次关闭时的状态  需要注意的是保存到注册表中的数据 都是以键值对的形式存在

void SettingsGui::writeSettings()
{                        //数据的存储
    settings->beginGroup("size_pos");
    settings->setValue("size",this->frameSize());
    settings->setValue("pos",this->frameGeometry().topLeft());
    settings->endGroup();

    settings->beginGroup("string_color");
    settings->setValue("string",this->textedit->toPlainText());
    settings->setValue("color",this->label->palette().color(QPalette::WindowText));
    settings->endGroup();
}

void SettingsGui::readSettings()
{                      //数据的读取
    settings->beginGroup("size_pos");
    QSize size = settings->value("size").toSize();//把大小数据拿出来
    QPoint pos = settings->value("pos").toPoint();
    settings->endGroup();

    this->resize(size);
    this->move(pos);

    settings->beginGroup("string_color");
    QString text = settings->value("string").toString();
    QColor color = settings->value("color").value<QColor>();//没有转换函数的 可以使用强制类型转换
    settings->endGroup();

    this->textedit->append(text);
    QPalette pale = this->label->palette();
    pale.setColor(QPalette::WindowText,color);
    this->label->setPalette(pale);
}

void SettingsGui::closeEvent(QCloseEvent *e)
{
    qDebug() << "void SettingsGui::closeEvent(QCloseEvent *e)" << endl;
    this->writeSettings();
}

 

Qt : Setting应用程序的数据保存和读取

标签:frame   setting   int()   系统   his   val   打开   类型   eset   

原文地址:https://www.cnblogs.com/xiaozoui11cl/p/12852575.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!