QML基于文件的自定义组件

QML基于文件的自定义组件

 

概念:QML可以由基本元素组合成一个复杂的元素,这种组合后的复杂元素就被称为组件。

作用:组件可以重用,减少代码的冗余。

 

建立步骤:

1、在一个“.qml”文件中建立组件,“.qml”文件名为组件的名字。

2、在使用组件的“.qml”文件中引用组件,形式:“import 组件名”

3、通过组件名字使用自定义的组件。

 

实例:QT有多个页面,每个都需要显示当前的日期和时间,通常是在每一个“.qml”文件中,都写日期和时间显示的代码,而这部分代码是完全一样的,如果将日期和时间显示做成组件,每个页面只是调用这个组件就可以了,这样代码看上去会很清晰、易懂。

 

源代码:

Tclock.qml       //自定义组件,显示日期和时间

import QtQuick 2.0

 

Item

{

    width:200

    height:30

Timer        //启动一个time

{

        interval: 500;      //每500毫秒调用一次

running: true;

repeat: true

        onTriggered: time.text = Qt.formatDateTime(new Date(), "yy-MM-dd hh:mm:ss")

    }

 

    Text

    {

        id: time

        color: "white"

        font.pixelSize: 25

    }

}


说明: 

1、作为组件的“.qml”文件名首字母必须为大写,本文件为“Tclock.qml”。

2、在使用组件的“.qml”文件中使用Tclock{ … }这种形式来引用组件。

 

setting.qml             //使用自定义组件的文件

import QtQuick 2.0

import "../com/ui"      //引用组件,路径为自定义组件保存的路径

{

    Tclock{     //调用自定义组件,会显示日期和时间

 

    }

}

 

说明: 

1、“Tclock{...}”内部可以追加其他属性,例如:width、height、x、y,或者“onClicked”事件等等。

2、组件定义的时候要灵活使用,可以设计出不同的风格和形式。

发布了19 篇原创文章 · 获赞 47 · 访问量 2642

猜你喜欢

转载自blog.csdn.net/papership/article/details/97140291