QML 编程之旅 – QML程序的基本结构概念
学习Qt编程快近一年了,的确是项目驱动,让我不得不咬紧牙关,需要快速的学习掌握一门新的技术。编程是一个非常累的学习过程,不但基本的逻辑思维能力要强,同时也非常考验阅读能力。到了一定年纪,记忆力在逐渐下降,特别是遇到一些生活上的困苦之后,要强保持清醒的头脑都很难。自从恋上了技术博客之后,感觉打开了另一条学习的通道,虽然访客的数量不多,但是看到自己这一路的历程,想想也是很开心的。技术博客,可以储备自己的技术能力,敦促自己的学习,提高总结,写作的能力,还可以将技术分享给更多一起学习的朋友的,何乐而不为!
现在还是言归正传吧。自从发现的Qt,相比较于MFC,发现原来GUI的编程可以如此简洁。但是开发出来的GUI的美观度上还是一般,虽然有QSS来描述GUI的外观,但是还是显得繁琐。
QML(Qt Meta Language) 是一个用来描述应用程序界面的声明式脚本语言。
它具有良好的易读性。它以可视化组件及其交互和相互关联的方式来描述界面,支持在一个用户界面上方便地复用和定制组件。
Qt Quick 是Qt为QML提供的一套类库。使用Qt Quick,可以很容易的用QML构建出高品质、流畅的UI界面。
QML 文档的构成
QML程序的源文件又叫"QML 文档",以.qml为文件名后缀。
每一个QML文档都由两部分构成:import 和对象声明。
import 部分导入Qt Quick 库,包含了用户界面最通用的类和功能。
如:
import QtQuick 2.12
import QtQuick.Window 2.12
导入这些库后,用户可以访问Qt Quick所有的QML类型、接口和功能。
对象声明,是QML程序代码的主体部分,它以层次化的结构定义了可视场景中将要显示的诸元素。
QML基本语法
1、层次: 每个QML文档有且只有一个根对象,可以嵌套层级的子对象。
对象的定义,以大写字母开头,后面跟一个大括号{},{}之中是该对象的属性,属性以键值对“”属性名:值“”的形式给出。
2、对象标识符:
每个对象都可以指定一个唯一的id值,这样便于在其他对象中识别并引用该对象。
3、属性的别名:
QML 使用alias 关键字声明属性的别名。
4、注释
同C/C++ 、javaScript 代码注释一样。
文章内容整理来自参考陆文周编写的《Qt5 开发及实例》。