我在尝试使用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"
我无法弄清楚,任何帮助都会很棒,谢谢你们。
答案 0 :(得分:3)
Here是方法Component.createObject
的文档。
如您所见,您可以使用函数的第二个可选参数设置新对象的参数。在你的情况下,它将是:
component.createObject(numbers, {"text": "1", "id": "button1"});