前面介绍了用C++定义QML类型,通常在使用Qt Quick开发项目时,C++定义后端数据类型,前端则完全使用QML实现。而QML类型或Qt Quick中的类型时不免需要为对象增加一些属性,本篇就来介绍如何自定义属性。
1. 创建项目,并编辑Main.qml
import QtQuick
Window {
width: 640
height: 480
visible: true
title: qsTr("Hello World")
MouseArea {
anchors.fill: parent
onClicked: {
sender.aInt += 1
}
}
Item {
id: sender
property int aInt
onAIntChanged:() => {
console.log("Sender Now aInt is :", aInt)
}
}
Item {
id: receiver
Connections {
target: sender
function onAIntChanged(message : string) {
console.log("Receiver Now aInt is :", sender.aInt)
}
}
}
}
2. 执行程序
在窗口中点击鼠标便可以在Qt Creator中看到如下Log了