【QT】QT的学习:在qml中添加property var跟别名

版权声明:禁止转载 https://blog.csdn.net/ipfpm/article/details/80973790

(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。





猜你喜欢

转载自blog.csdn.net/ipfpm/article/details/80973790