详解Qt6 QML Settings location 不创建指定路径文件
在 Qt QML 项目中可以使用Qt QSettings QML 版 Settings 方便数据持久化,具体使用可以参考Qt 文档,这里主要简单记录一下从Qt 5 升级到 Qt 6 后,没有创建指定的文件。在Qt 5中是使用 fileName 属性来指定文件路径,如下,能在 app 文件夹下面自动创建 qt_ui_config 文件
// Qt 5
import Qt.labs.settings 1.0
Settings {
id: myAppSettings
fileName: applicationDir + "/qt_ui_config"
property bool isEdit: false
property int menuIndex: 0
property int menuPreIndex: 0
category: "rightMenu"
}到 Qt 6 以后, 弃用了 fileName 属性,改用 location 属性,但有个坑,如果只是简单修改属性名,会发现指定的目录下找不到文件,但是能正常使用,这是因为 Qt 6 的 location 属性后面的路径中要添加前缀: “file:”
// Qt 6
import QtCore
Settings {
id: myAppSettings
// location: applicationDir + "/qt_ui_config" // failed
location: "file:" + applicationDir + "/qt_ui_config" // ok
property bool isEdit: false
property int menuIndex: 0
property int menuPreIndex: 0
category: "rightMenu"
}到此这篇关于详解Qt6 QML Settings location 不创建指定路径文件的文章就介绍到这了,更多相关Qt6 QML 不创建指定路径文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
详解C++11 原始字符串字面量(Json字符串表达更方便)
原始字符串字面量(Raw String Literal)是C++11引入的一种字符串表示方式,用于简化字符串的定义,特别是当字符串中包含大量特殊字符(如换行符、双引号等)时,这篇文章给大家介绍C++11原始字符串字面量(Json字符串表达更方便)的相关知识,感兴趣的朋友一起看看吧2025-03-03


最新评论