资料来源:http://doc.qt.io/qt-5/qml-qtquick-loader.html
Receiving signals from loaded objects
接受来自加载对象的信号
main.qml:
import QtQuick 2.6
import QtQuick.Window 2.2
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
Rectangle {
width: 200
height: 200
color: "#f5f5f5"
Loader {
id: pageLoader
source: "Page1.qml"
}
Connections {
target: pageLoader.item
onMessage: console.log(msg)
}
}
}
Page1.qml:
import QtQuick 2.0
Rectangle {
id: page
signal message(string msg)
width: 100; height: 100; color: "red"
MouseArea {
anchors.fill: parent
onClicked: page.message("clicked!")
}
}
效果图:
效果:
点击红色区域,会输出:“qml: clicked!”的信息。