QSettings 是 Qt 框架中用于读取和写入应用程序配置信息的类。它提供了一个跨平台的解决方案,可轻松地保存和获取应用程序的设置和状态。
QSettings 通常用于保存应用程序的配置信息,如窗口大小、位置、字体设置等。这些信息通常存储在注册表、属性列表文件或 INI 文件中,具体取决于操作系统。在 Windows 系统中,QSettings 通常将数据存储在注册表中;在 Unix 系统中,如果没有标准配置文件,许多应用程序(包括 KDE 应用程序)使用 INI 文本文件。
QSettings API 基于 QVariant,可以保存很多基础类型,如 QString、QRect、QImage 等。每个设置包括一个指定设置名称(键)的字符串和一个与该键关联的 QVariant 存储数据。可以使用 setValue() 方法设置一个设置的值,这些变化可能不会立即保存到永久存储中,但可以随时调用 sync() 方法提交更改。
标题下面封装一个可以QSettings读写ini文件的类:
appcfg.h
#ifndef APPCFG_H
#define APPCFG_H
#include <QObject>
#include <QSettings>
//配置信息
struct tagAppcfg
{
double fps{
0.0d};
int vs_min{
0};
int vs_max{
0};
int region_x{
0};
int region_y{
0};
int region_w{
0};
int region_h{
0};
int canvasNum{
0};
int canvasType{
0};