我有一个QML Loader
加载另一个qml
Loader { id: gaugeLoader }
PieMenu {
id: pieMenu
MenuItem {
text: "Add Bar Gauge"
onTriggered: gaugeLoader.source = "qrc:/Gauges/horizontalBarGauge.qml"
}
MenuItem {
text: "Action 2"
onTriggered: print("Action 2")
}
MenuItem {
text: "Action 3"
onTriggered: print("Action 3")
}
}
如何传递参数来设置加载的qml的 ID
, width
, height
等?
1 回答
Method 1:
Loader::setSource
您可以使用Loader::setSource(url source, object properties)函数在构造期间设置属性,例如:
请注意,您不能以这种方式设置id attribute,因为它不是普通的属性属性:
相反,您可以创建属性别名,如下所示:
相对于Loader对象的 Method 2: 几何
或者,您可以在
Loader
对象上设置width
和height
,并在horizontalBarGauge.qml
中指定相对于其父对象的宽度和高度,即Loader
对象 .QRC:/Gauges/horizontalBarGauge.qml: