QML学习笔记【01】:Qt Quick及其应用程序创建

一、Qt Quick

Qt Quick是Qt5界面开发技术的统称,是一个基于QML的框架,包含以下几种技术的集合:

  • QML - 界面标记语言,是一种描述对象如何相互关联的声明式语言。与HTML类似
  • JavaScript - 动态脚本语言
  • Qt C++ - 跨平台C++封装库

QML学习笔记【01】:Qt Quick及其应用程序创建_第1张图片

  • Declarative engine:声明引擎,包括Quick框架、JS框架、C++ Extension框架
  • Native Extensions:本地扩展
  • QML visual elements:QML的一些元素

在一个典型的Qt5项目中,前端采用QML/JaveScript开发界面,后端采用Qt C++与系统交互并完成复杂的运算逻辑

QML和Qt Quick的关系就像C++和C++标准库的关系

QML学习笔记【01】:Qt Quick及其应用程序创建_第2张图片

二、创建应用程序

1、控制台应用程序

一个控制台应用程序不需要提供任何人机交互图形界面

QML学习笔记【01】:Qt Quick及其应用程序创建_第3张图片

2、Qt Widget窗口应用程序

QML学习笔记【01】:Qt Quick及其应用程序创建_第4张图片

3、Qt Quick应用程序

移动设备的用户界面设计非常不同。它们相对于桌面应用程序更加简洁,只需要专注的做一件事情。动画效果是一个非常重要的部分,用户界面需要生动活泼。传统的Qt技术已经不适于这些市场了。Qt Quick将会解决这个问题。

Qt Quick 提供了一个类似HTML声明语言的环境应用程序作为你的用户界面前端(the front-end),在你的后端使用本地的c++代码。这样允许你在两端都游刃有余。比如:

import QtQuick 2.0
Rectangle {
    width: 240; height: 1230
    Rectangle {
        width: 40; height: 40
        anchors.centerIn: parent
        color: '#FFBB33'
    }
}

有两种方式可以创建QML工程

方式一:创建 Qt Quick UI Prototype工程,创建后只有 .qmlproject工程文件和 *qml文件,它需要在运行时启动,Qt提供了一个典型的运行环境叫做qmlscene。

QML学习笔记【01】:Qt Quick及其应用程序创建_第5张图片

QML学习笔记【01】:Qt Quick及其应用程序创建_第6张图片

这种方式对于测试或原型化用户界面非常有用,或者仅用于QML编辑的单独项目,不能将他们用于应用程序开发,因为它们不包含:

  • C++代码
  • 资源文件(.qrc)
  • 将应用程序部署到设备所需的代码

方式二:创建 Qt Quick Application 工程,创建后跟窗口应用程序类似,是把QML文档作为资源加载到工程中。正式项目开发常使用的方式

QML学习笔记【01】:Qt Quick及其应用程序创建_第7张图片

QML学习笔记【01】:Qt Quick及其应用程序创建_第8张图片

三、学习参考资源

《QtQuick核心编程》书籍

Qt5 Cadaques — Qt5 Cadaques Book vmaster (qmlbook.github.io) QmlBook官方文档

张小飞/QmlBook-In-Chinese (gitee.com) QmlBook-In-Chinese 中文文档

QML6(Qt Quick)开发教程-更新中_哔哩哔哩_bilibili 偏重于QML语法、QML界面效果的教学,参考的QmlBook

QML教程_哔哩哔哩_bilibili 偏重于实战,C++、QML语法及与后台交互等,参考的QT助手

Qt5(C++)高级篇之5:QML入门与提高项目实战【共63课时】_C/C++课程-51CTO学堂 项目实战,收费

Qt Quick 基础笔记_比卡丘不皮的博客-CSDN博客 QmlBook-In-Chinese 学习笔记

涛哥的博客 (jaredtao.github.io) 非常强!写了个QML开源项目:TaoQuick

QML学习笔记【01】:Qt Quick及其应用程序创建_第9张图片

你可能感兴趣的:(#,QML,qt,QML)