Qt中的QSettings这个类有.value这个成员函数吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt中的QSettings这个类有.value这个成员函数吗?相关的知识,希望对你有一定的参考价值。

我怎么在Qt的在线文档中找不到啊?

必须有啊,给你一个读写配置文件的方法,你试试!可以有
bool QQUtil::writeInit(QString path, QString user_name, QString password)

if(path.isEmpty() || user_name.isEmpty() || password.isEmpty())

return false;


//创建配置文件操作对象
QSettings settings(path, QSettings::IniFormat);

//将用户信息写入配置文件
settings.beginGroup("config");
settings.setValue("user_name", user_name);
settings.setValue("password", password);
settings.endGroup();

return true;


bool QQUtil::readInit(QString path, QString user_key, QString &user_value)

user_value = QString("");
if(path.isEmpty() || user_key.isEmpty())

return false;


//当前目录的INI文件
QSettings settings(path, QSettings::IniFormat);

//读取用户配置信息
user_value = settings.value("config/"+user_key).toString();

return true;
参考技术A QVariant value ( const QString & key, const QVariant & defaultValue = QVariant() ) const

清理“QSettings”注册表项的最佳方法(Windows 上的 Qt 5)

【中文标题】清理“QSettings”注册表项的最佳方法(Windows 上的 Qt 5)【英文标题】:Best way to clean up `QSettings` registry entries (Qt 5 on Windows) 【发布时间】:2020-06-08 18:32:49 【问题描述】:

Qt 在 Windows 注册表中存储 QSettings 值:https://doc.qt.io/qt-5/qsettings.html

用户通常希望应用程序在会话中记住其设置(窗口大小和位置、选项等)。此信息通常存储在 Windows 的系统注册表中,以及 macOS 和 iOS 的属性列表文件中。在 Unix 系统上,在没有标准的情况下,许多应用程序(包括 KDE 应用程序)使用 INI 文本文件。

如果我卸载我的 Qt 应用程序,我希望删除这些条目。有没有一种简单的方法可以做到这一点,而无需明确删除所有值。我在问一个 Qt 函数来删除我的特定应用程序的所有值。

【问题讨论】:

【参考方案1】:

如果使用公司和应用程序名称或使用默认构造函数初始化 QSettings 对象,则可以使用方法clear()

例子:

QSettings settings;
settings.clear();

或者,您也可以尝试:

QSettings settings(QSettings::SystemScope, "Org", "App");
settings.clear();

【讨论】:

以上是关于Qt中的QSettings这个类有.value这个成员函数吗?的主要内容,如果未能解决你的问题,请参考以下文章

Qt/C++ 将通用对象序列化为 QSettings

QT 登录记住密码方法之一:Qt QSettings读写配置文件

Qt中的属性设置(搜集整理)

在 Qt 中,如何使用 QSettings 来创建/修改/删除 Windows 注册表项/值?

Qt - 将 QString 路径保存到注册表中的 QSettings

QSettings 读/写ini配置文件中的数组数据