QT:配置参数设计

2025-10-23 13:05:49

1、建立一个业务类BllSettings,该类实现的是将参数配置全部封装在里面,供全局调用。

#include <QObject>

#include <QSettings>

class BllSettings : public QObject

2、初始化函数:该函数设计一个全局配置对象s_settings,保证在任何地方调用业务类BllSettings,只有一个配置被初始化。

----.h文件-----

static QSettings* s_settings;

public slots:

/**

* @brief 初始化配置文件

*/

void init();

----cpp文件----

QSettings* BllSettings::s_settings = 0;

/**

* @brief 初始化配置文件

*/

void BllSettings::init()

{

QString dir = QCoreApplication::applicationDirPath();

if (s_settings == 0)

{

//exe运行的当前目录

s_settings = new QSettings(QString("%1/config.ini").arg(dir), QSettings::IniFormat);

}

}

3、更新参数函数,实现参数文件的更改。

----.h文件----

/**

* @brief 更新配置

* @param prefix 组名

* @param key 关键字

* @param value 参数值

*/

void update(QString prefix, QString key, QVariant value);

----.cpp文件----

/**

* @brief 更新配置

* @param prefix 组名

* @param key 关键字

* @param value 参数值

*/

void BllSettings::update(QString prefix,QString key,QVariant value)

{

s_settings->beginGroup(prefix);

s_settings->setValue(key, value);

s_settings->endGroup();

}

4、读取参数函数,实现参数文件的读取。

----.h文件----

/**

* @brief 读取配置

*/

QVariant read(QString prefix, QString key);

----.cpp文件----

/**

* @brief 读取配置

* @param prefix 组名

* @param key 关键字

*/

QVariant BllSettings::read(QString prefix, QString key)

{

QVariant var = s_settings->value(QString("%1/%2").arg(prefix).arg(key),"-1");

return var;

}

5、例子:参数配置界面

QT:配置参数设计

QT:配置参数设计

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢