qsettings的基本用法

QSettings的基本用法:
对于Windows,配置信息保存在“注册表”中,Mac OS 是XML 文件,Unix 是INI 文件

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

    loadSetting();

}

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

void Widget::saveSetting()
{
    QSettings setting("MyApp", "MySetting");
    setting.beginGroup("MainWindow");
    setting.setValue("position",this->geometry());
    setting.setValue("lineEditVale",ui->lineEdit->text());

    setting.endGroup();
}

void Widget::loadSetting()
{
    QSettings setting("MyApp", "MySetting");
    setting.beginGroup("MainWindow");
    QRect myRect = setting.value("position",QRect(30,30,300,300)).toRect();
    this->setGeometry(myRect);
    QString text = setting.value("lineEditVale",QString("12334")).toString();
    ui->lineEdit->setText(text);
    setting.endGroup();
}

void Widget::on_pushButton_save_clicked()
{
    saveSetting();
}

void Widget::on_pushButton_load_clicked()
{
    loadSetting();
}

void Widget::on_pushButton_remove_clicked()
{
    QSettings setting("MyApp", "MySetting");
    setting.remove("MainWindow");
}