QtObject
に別のQtObject
のプロパティでアクセス可能にしたいと考えています。
この具体例の場合、QtObject
は、さまざまなモデルItems
として機能します。QtCreatorは、プロパティ割り当てでオブジェクトをインスタンス化するときに 'Build Problems'を表示します
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は、2つのマークされた行(<-*
)の "Build Problems"をTestObj.qml
に見つけます。
* 1:それはトークンを期待: ''
* 2:それはトークンを期待: '}'
はQtCreator(4.0.2、Windowsの場合)で、最大何ですか? それは間違いありませんか?
readonly
を削除すると、問題は消えますが、読み取り専用にします。
running
プロパティが公開されていれば十分ですが、QtObjectsにはデフォルトのプロパティがない(ビジュアル)子を持つことができないため、これを行う方法は他にありません。
どのバージョンのCreatorですか? 4.1.0では表示されません。 – Mitch
ああそうです。あなたはそうです:Windowsでは4.0.2です。だからすでにバグが修正されているようだ。 – derM