如下所示,当点击button时,修改Loader加载的组件中的Rectangle对象的背景色。
此时需要使用到 Loader.item属性来引用rect对象。
import QtQuick 2.0
import QtQuick.Controls 2.12
import QtQuick.Window 2.12
import QtQuick.Layouts 1.3
import QtQml 2.12
Window {
visible: true
width: 800
height: 480
title: qsTr("Hello World")
Component {
id: com
Rectangle {
id: rect
width: 200
height: 200
color: "red"
}
}
// 点击按钮时,修改rect的背景色
Row {
Loader {
id: loader
sourceComponent: com
}
Button {
text: "click"
onClicked: {
// rect.color = "green" // error
// com.rect.color = "green" // error
loader.item.color = "green"
}
}
}
}