4

Javascriptを使用してQMLでオブジェクトを生成し、動的にオブジェクトを作成しようとすると問題が発生します。

私が使おうとしているコードはこれです

Grid {
    id: numbers
    anchors.centerIn: parent
    columns: 3
    spacing: 2
    function createNumbers(){
        var component = Qt.createComponent("Button.qml");
        for(var i=1; i<37; i++){
            component.createObject(numbers)
        }
    }
    Component.onCompleted: createNumbers()
}

これは問題なく機能しますが、変数を含めてそれぞれを異なるものにしたいので、Button.qmlに情報を渡すと、次のように設定されます。

property string text: "1"
property string id: "button1"

私はそれを理解することができません、どんな助けも素晴らしいでしょう、みんなありがとう。

4

1 に答える 1

3

これがメソッドのドキュメントですComponent.createObject

ご覧のとおり、関数の2番目のオプションのパラメーターを使用して、新しいオブジェクトのパラメーターを設定できます。あなたの場合は次のようになります。

component.createObject(numbers, {"text": "1", "id": "button1"});
于 2012-11-27T16:53:10.540 に答える