Qt 6 QML Settings location 不创建指定路径文件

在 Qt QML 项目中可以使用Qt QSettings QML 版 Settings 方便数据持久化,具体使用可以参考Qt 文档,这里主要简单记录一下从Qt 5 升级到 Qt 6 后,没有创建指定的文件。在Qt 5中是使用 fileName 属性来指定文件路径,如下,能在 app 文件夹下面自动创建 qt_ui_config 文件

javascript 复制代码
// 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:"

javascript 复制代码
// 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"
    }
相关推荐
郝学胜_神的一滴3 小时前
Qt 高级开发 021:零基础吃透 QVBoxLayout 垂直布局
c++·qt
誰能久伴不乏8 小时前
libmodbus 在 Windows 环境下报 “Invalid argument“ 的排错记录
c++·qt·modbus
小许同学记录成长10 小时前
网格简化算法 — Edge Collapse(边塌缩)
qt·算法
tangchao340勤奋的老年?10 小时前
遮挡式引导界面设计
qt
酬勤-人间道10 小时前
VTK 与 Cesium-native 结合实践:小场景三维编辑 + 数字地球精准贴合
c++·qt·vtk·遥感·岩土·cesium-native
誰能久伴不乏11 小时前
Qt C++ 解析 JSON 完全指南:从核心概念到工业级实战
c++·qt·json
雪的季节12 小时前
Qt 高性能绘图的核心原理
qt
Irissgwe12 小时前
一、Qt 概述
c++·qt·gui·qt creator
m0_6174939412 小时前
PySide6/PyQt6实现中英文切换完整教程(Qt Designer + Qt Linguist + 动态切换)
开发语言·qt
咸鱼翻身小阿橙12 小时前
文件读写 + Qt Model/View + 自定义分页+搜索过滤
java·数据库·qt