2016-11-09 1 views
0

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にはデフォルトのプロパティがない(ビジュアル)子を持つことができないため、これを行う方法は他にありません。

+0

どのバージョンのCreatorですか? 4.1.0では表示されません。 – Mitch

+0

ああそうです。あなたはそうです:Windowsでは4.0.2です。だからすでにバグが修正されているようだ。 – derM

答えて

1

Creator 4.1.0ではこれが表示されないため、修正されたバグである可能性があります。

+0

後で試してみます。このヒントありがとう! – derM

関連する問題