zoukankan      html  css  js  c++  java
  • QML手动连接信号槽【Connections】

    1、使用Connections

    import QtQuick 2.6
    import QtQuick.Window 2.2
    import QtQuick.Controls 1.4
    Window {
        visible: true
         640
        height: 480
        title: qsTr("Hello World")
    
        Text {
            id: text1;
            text: qsTr("text1");
            anchors.top: parent.top;
            anchors.topMargin: 10;
            anchors.horizontalCenter: parent.horizontalCenter;
            anchors.centerIn: parent;
            font.pixelSize: 20;
            color: "red";
        }
        Text {
            id: text2;
            text: qsTr("text2");
            anchors.top: text1.bottom;
            anchors.topMargin: 10;
            anchors.horizontalCenter: parent.horizontalCenter;
            font.pixelSize: 20;
        }
        Button{
            id:btn;
            text: "btn";
            anchors.horizontalCenter: parent.horizontalCenter;
            anchors.top:text2.bottom;
            anchors.topMargin: 10;
        }
    
        Connections{
            target: btn;
            onClicked:{
                text1.color=Qt.rgba(Math.random(),Math.random(),Math.random(),1);
                text2.color=Qt.rgba(Math.random(),Math.random(),Math.random(),1);
            }
        }
    }

     上述代码等于【在btn的onClicked里直接加改变颜色的代码】

    import QtQuick 2.6
    import QtQuick.Window 2.2
    import QtQuick.Controls 1.4
    Window {
        visible: true
         640
        height: 480
        title: qsTr("Hello World")
    
        Text {
            id: text1;
            text: qsTr("text1");
            anchors.top: parent.top;
            anchors.topMargin: 10;
            anchors.horizontalCenter: parent.horizontalCenter;
            anchors.centerIn: parent;
            font.pixelSize: 20;
            color: "red";
        }
        Text {
            id: text2;
            text: qsTr("text2");
            anchors.top: text1.bottom;
            anchors.topMargin: 10;
            anchors.horizontalCenter: parent.horizontalCenter;
            font.pixelSize: 20;
        }
        Button{
            id:btn;
            text: "btn";
            anchors.horizontalCenter: parent.horizontalCenter;
            anchors.top:text2.bottom;
            anchors.topMargin: 10;
            onClicked: {
                text1.color=Qt.rgba(Math.random(),Math.random(),Math.random(),1);
                text2.color=Qt.rgba(Math.random(),Math.random(),Math.random(),1);
            }
        }
    }

     2、使用signal.connect

  • 相关阅读:
    el-cascader回显问题
    nuxt + ueditor国际化
    nuxt + element + i18n 国际化element(我用的i18n@8.x版本)
    CDH| 组件的使用-Flume| Kafka| Oozie基于Hue的任务调度
    CDH| Hive| Hue| Sqoop| Impala等组件安装部署
    CDH| 组件的安装-HDFS的配置 | Flume| Kafka|
    Flink| 实时需要分析
    Flink| 状态一致性
    Flink| 容错机制
    Flink| 第一个窗口触发时间
  • 原文地址:https://www.cnblogs.com/judes/p/9431361.html
Copyright © 2011-2022 走看看