我在使用 gsettings-qt 绑定时遇到问题: https://launchpad.net/gsettings-qt
现在我尝试在我的 .qml 中使用它
import QtQuick 2.1
import QtQuick.Controls 1.1
import GSettings 1.0
import QtQuick.Window 2.1
Window {
id:window
GSettings {
id: test
schema.id: "org.test.test" //I created this schema but it
doesn't work with any
onChanged: changes.push([key, value]);
}
color: test.testcolor
}
无论我做什么,它都说“无法将 [undefined] 分配给 QColor,但如果我尝试从按钮 test.testcolor = mycolor 设置值,颜色就会正确设置,但读取总是返回未定义。有人有什么想法吗?
答案1
不幸的是,这不会像您描述的那样工作,因为 GSettings 没有 QColor 的概念。我假设您将颜色存储为“(yyyy)”(对应于 rgba)?读取该元组时,gsettings-qt 不知道这应该是 QColor。
(顺便说一句:你得到 [undefined] 是因为 gsettings-qt 甚至不处理元组。我忘了为什么,但可能是因为 QVariant 缺少元组类型?)
这是用于应用程序的吗?我认为 SDK 人员正在开发一种对 Qt 类型更友好的设置 API。