QML QtCreator 重新格式化 属性 具有无效代码的组件类型
QML QtCreator reformats property of component type with invalid code
我定义了以下属性,例如:
property Gradient greenGradient: Gradient {
GradientStop {
position: 0.0
color: "#00f03b"
}
GradientStop {
position: 1.0
color: "#3cb53b"
}
}
在 QtCreator(v3.5.0,运行 in Windows7)中,当我执行
Tools->QML/JS->Reformat File
它将我的 属性 更改为以下无效代码:
property Gradient greenGradient: greenGradient: Gradient {
GradientStop {
position: 0.0
color: "#00f03b"
}
GradientStop {
position: 1.0
color: "#3cb53b"
}
}
我这样定义 Component
为 属性 是不是做错了什么? Rhe QML 文档 state:
Additionally, any QML object type can be used as a property type. For example:
property Item someItem
property Rectangle someRectangle
或者这只是QtCreator重新格式化功能中的一个错误?我尝试了几种不同的对象类型,结果相同。 int
、color
、var
、string
等基本类型按预期工作。
我想我找到了答案。
Qt5 文档对此主题保持沉默(或至少不清楚)。但是,在 Qt 4.7 文档中我发现 this:
Such object-type properties default to an undefined value.
因此,代码必须改成这样:
property Gradient greenGradient
greenGradient: Gradient {
GradientStop {
position: 0.0
color: "#00f03b"
}
GradientStop {
position: 1.0
color: "#3cb53b"
}
}
原代码和修改后的代码功能相同。修改后的版本只是通过QtCreator的重新格式化功能得到的,没有搞砸。
我定义了以下属性,例如:
property Gradient greenGradient: Gradient {
GradientStop {
position: 0.0
color: "#00f03b"
}
GradientStop {
position: 1.0
color: "#3cb53b"
}
}
在 QtCreator(v3.5.0,运行 in Windows7)中,当我执行
Tools->QML/JS->Reformat File
它将我的 属性 更改为以下无效代码:
property Gradient greenGradient: greenGradient: Gradient {
GradientStop {
position: 0.0
color: "#00f03b"
}
GradientStop {
position: 1.0
color: "#3cb53b"
}
}
我这样定义 Component
为 属性 是不是做错了什么? Rhe QML 文档 state:
Additionally, any QML object type can be used as a property type. For example:
property Item someItem
property Rectangle someRectangle
或者这只是QtCreator重新格式化功能中的一个错误?我尝试了几种不同的对象类型,结果相同。 int
、color
、var
、string
等基本类型按预期工作。
我想我找到了答案。
Qt5 文档对此主题保持沉默(或至少不清楚)。但是,在 Qt 4.7 文档中我发现 this:
Such object-type properties default to an undefined value.
因此,代码必须改成这样:
property Gradient greenGradient
greenGradient: Gradient {
GradientStop {
position: 0.0
color: "#00f03b"
}
GradientStop {
position: 1.0
color: "#3cb53b"
}
}
原代码和修改后的代码功能相同。修改后的版本只是通过QtCreator的重新格式化功能得到的,没有搞砸。