(1)别名:
property alias XXX:ZZZZ
例如:某个ButtonTool.qml文件中:
import QtQuick 2.0
import QtQuick.Controls 2.0
Button {
id: control
checkable: true
property bool check: control.checked
property alias buttonText: control.text
contentItem: Item {
Text {
anchors.centerIn: parent
text: control.text
color: "#ffffff"
font.pixelSize: 16
}
}
background: Image {
source: checked ? "qrc:auto-knob-down.png" : "qrc:auto-knob-up.png"
}
}
说明:该button的id是control;其中蓝色带有下划线的事别名,红色带有下划线的是button的共有属性;两个均可以被外部的qml的调用。
对于别名buttonText,当别的qml调用button的时候,直接在对应的qml中使用:
ButtonTool {
id: nightButton
anchors.verticalCenter: parent.verticalCenter
buttonText: "NIGHT"
}
好处就是:buttonTool就可以成为一个固定格式的按钮,但是text不固定,任何的qml都可以通过调用buttonTool的方式设置按钮的字体。
对于buttonTool的属性check:可以在别的qml中调用:
例如:control.check 是否为true。