我想通过另一个QtObject
的媒体访问QtObject
在这个具体案例中,QtObject
充当各种Items
的模型。
TestObj.qml
QtObject {
id: root
property real position: 0
readonly property NumberAnimation animation: NumberAnimation { // <-*1
target: root
property: 'position' //<-*2
from: 0
to: 1
duration: 10000 * (1 - position)
onRunningChanged: console.log('running', running)
}
}
main.qml
import QtQuick 2.4
import QtQuick.Window 2.2
import QtQuick.Controls 2.0
Window {
width: 700
height: 700
visible: true
Button {
x: 600 * model.position
y: 400 * model.position
onClicked: model.animation.running = true
}
TestObj {
id: model
}
}
正如预期的那样,它完美无瑕。然而,QtCreator发现了一些&#34;构建问题&#34;在<-*
中的两个标记行(TestObj.qml
)。
* 1:它需要令牌:&#39;,&#39;
* 2:它需要令牌:&#39;}&#39;
QtCreator(4.0.2,Windows)的用途是什么? 是对还是错?
当我删除readonly
时,问题就会消失,但我希望它是只读的。
对我来说,暴露running
- 属性就足够了,但由于QtObjects没有(可视)子级,因为它没有默认属性,我看不到任何属性其他方法。
答案 0 :(得分:1)
我没有在Creator 4.1.0中看到这一点,所以它可能是一个已修复的错误。