如何使用 QSettings 在 Qt 应用程序中加载设置

2024-02-20

有两种可能的方法:

  • 将所有设置加载到某个结构中
  • 按需加载值

哪种方法更好?


这取决于您将如何使用您的设置文件。您是否希望允许您的应用程序的用户动态地更改文件中的设置(例如 .ini 文件)?或者必须通过 GUI 来设置设置?

如果您使用某些 GUI 来更改设置,我建议您在应用程序启动时从静态类加载主要设置。

void SettingsManager::loadSettings()
{
    // .ini format example
    QSettings settings(FileName, QSettings::IniFormat);

    IntegerSetting = settings.value("SettingName", default).toInt();
    BooleanSetting = settings.value("SettingName", default).toBool();

    // ...
}

然后,按需保存更改的值就没有问题了,因为Q设置 http://qt-project.org/doc/qt-4.8/qsettings.html优化。

/**
  * key is your setting name
  * variant is your value (could be string, integer, boolean, etc.)
  */
void SettingsManager::writeSetting(const QString &key, const QVariant &variant)
{
    QSettings settings(FileName, QSettings::IniFormat);

    settings.setValue(key, variant);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 QSettings 在 Qt 应用程序中加载设置 的相关文章

随机推荐