Qt QML本地存储可以';是否为布尔变量中不同类型的现有角色赋值?
我正在Qt Creator上制作一个应用程序。我有这样一个工具按钮:Qt QML本地存储可以';是否为布尔变量中不同类型的现有角色赋值?,qt,qml,qt5,Qt,Qml,Qt5,我正在Qt Creator上制作一个应用程序。我有这样一个工具按钮: ToolButton { icon.source: (star) ? "icons/star.svg" : "icons/star-border.svg" onClicked: { star = !star Data.update(number, star) } states: State { name: "pressed"; when: pare
ToolButton {
icon.source: (star) ? "icons/star.svg" : "icons/star-border.svg"
onClicked: {
star = !star
Data.update(number, star)
}
states: State {
name: "pressed"; when: parent.pressed === true
PropertyChanges { target: parent; icon.source: (star) ? "icons/star.svg" : "icons/star-border.svg" }
}
transitions: Transition {
from: ""
to: "pressed"
reversible: true
}
}
一切正常,但当单击ToolButton时,此错误会出现在应用程序输出上:
未知文件:无法分配给不同类型的现有角色“star”
[布尔->数字]
看起来这一行是导致错误的原因:star=!星形
其中star
变量是来自数据库(本地存储)的布尔值
修理它重要吗
如何修复它
这是更改图标的正确方法吗?source onClick?本地存储使用SQLite,而SQLite中没有布尔值,因此布尔变量映射为0或1 对于要替换的解决方案:
star = !star
借
what is Data,在这里提供what is
star
?在哪里定义了star?本地存储使用SQLite,而SQLite中没有布尔值,因此布尔变量映射为0或1。它为youchangestar=生成该错误!星型
到星型=星型?0:1
star = star ? 0: 1