QML和Qt Quick

QML和Qt Quick的关系类似于C++和STL,QML是一种说明性语言,语法类似于CSS,而Qt Quick模块是用QML开发的的一套标准库,可以使用Qt Quick来快速开发QML应用。

实例

在QT中新建一个Qt Quick程序,main函数代码如下:

#include <QGuiApplication>
#include <QQmlApplicationEngine>int main(int argc, char *argv[])
{QGuiApplication app(argc, argv);QQmlApplicationEngine engine;engine.load(QUrl(QStringLiteral("qrc:/main.qml")));if (engine.rootObjects().isEmpty())return -1;return app.exec();
}

与之前的Qt Widget程序不同的是,这里加载了一个main.qml文件,而之前是一个widget窗体。
看看main.qml文件:

import QtQuick 2.6
import QtQuick.Window 2.2Window {visible: truewidth: 640height: 480title: qsTr("Hello World")Text{text:qsTr("Hello Qt Quick")anchors.centerIn:parent}
}

从main.qml文档可以看出,一个QML文档由两部分组成:
1.import语句
  import和C++中的#include,java中的import类似,导入一个模块,这是使用某种QML类型所必须的。打开帮助文档,搜索Text:发现要使用Text则必须导入QtQuick 2.7,Window也同样


2.QML对象树
在main.qml中,最外层的对象是Window,它也是整个应用程序的根对象,而Text则是Window的子对象,一个QML文档就对应一棵以根对象为根的对象树。

(一)Qt Quick Hello World相关推荐

  1. Qt使用教程:使用Qt Quick UI表单(五)

    2019独角兽企业重金招聘Python工程师标准>>> <Qt Enterprise最新版下载> 创建标签 创建注释标签 该Customer Notes标签包含了一个关于 ...

  2. 10.QML Qt Quick Controls 2之imagine style

    Qt Quick Controls 2的目标之一是将控件的逻辑与外观分离.外观的实现由QML代码和图形资源组成.使用Imagine样式(imagine style),可以自定义应用程序的外观和图形资源 ...

  3. 7.QML Qt Quick——基于Qt Quick Controls 2实现图片浏览器

    Qt Quick Controls 2提供了一组UI控件,例如按钮,标签,复选框,滑块等(用之查之即可).用于在Qt Quick中创建用户界面.UI控件很多,这里通过一个图片浏览器的实现来逐步讲解 图 ...

  4. qt on android qml,Qt on Android: Qt Quick 之 Hello World 图文详解

    在上一篇文章,<Qt on Android:QML 语言基础>中,我们介绍了 QML 语言的语法,在最后我们遗留了一些问题没有展开,这篇呢,我们就正式开始撰写 Qt Quick 程序,而那 ...

  5. 技术干货 | 基于 Qt Quick Plugin 快速构建桌面端跨平台组件

    导读:桌面端的 UI 开发框架对比移动端.Web 端的成熟方案,一直处于不温不火的状态.随着疫情掀起的风波,桌面端在线教育.视频会议等需求不断涌现.本文将围绕 Qt Quick 的优势来介绍如何快速创 ...

  6. Qt 5.12 LTS(长期维护版本)中Qt Quick的性能改进

    我们一直致力于提高Qt的性能和优化其内存消耗.Qt 5.12的一个重点关注是在于减少QML引擎的内存消耗和优化JavaScript性能. 与上一个长期支持版Qt 5.6 LTS相比,Qt 5.9 LT ...

  7. Qt Quick中的The Visual Canvas

    The Visual Canvas The Visual Canvas 坐标系 Visual Parent Scene Graph The Visual Canvas Qt Quick提供的可视画布是 ...

  8. Qt Quick测试

    Qt Quick测试 Qt Quick测试 简介 使用模块 QML API C ++ API 用CMake构建 用qmake构建 运行测试 在QML测试之前执行C ++ Qt Quick测试 简介 Q ...

  9. Qt Quick入门

    Qt Quick入门 Qt Quick入门 创建警报项目 Qt创作者 其他源文件 输入新警报 编辑警报 删除警报 概括 Qt Quick入门 基于警报应用程序的Qt Quick教程. 本教程介绍如何开 ...

  10. Qt Quick的国际化和本地化

    Qt Quick的国际化和本地化 Qt Quick的国际化和本地化 国际化您的应用程序 1.对所有文字用户界面字符串使用qsTr() 2.为翻译器添加上下文 3.歧义相同的文本 4.用于%x将参数插入 ...

最新文章

  1. Java_bytecode
  2. pandas.series的数据定位为什么用两个左中括号[[
  3. 我来悟微服务(3)-需求管理
  4. 汽车开放系统架构(AUTOSAR)简介
  5. ASP.NET通过ajax调用后台方法
  6. dubbo管控台安装
  7. 设计模式---接口隔离模式之门面模式(Façade)
  8. 跨域405(Method Not Allowed)问题
  9. SAP Spartacus 里的 cxOutletRef 指令执行过程分析
  10. dpdk 18 ixgbe驱动初始化分析
  11. python中update什么意思_如何在Python中更新字典中键的值?
  12. 数据结构之图定义及相关概念
  13. 从401航班事故调查看项目总结
  14. VMware虚拟机(Ubuntu)添加物理串口
  15. CCSK云安全认证-M2-云基础设施安全
  16. PyCharm - Compare With... (文件比较)
  17. win10专业版opnet安装及vs2010环境变量配置
  18. (转帖)微服务拆分的原则和方法(2)
  19. 单反相机的传奇—佳能单反50年辉煌之路(连载十五)
  20. 这是一份用心整理的Android面试总结,面试真题解析

热门文章

  1. 中国居民收入调查数据库CHIPS
  2. YUV图像格式转换方法实践
  3. [刷题]leetcode\35_搜索插入位置
  4. Node-内置模块:子进程 child_process
  5. C# Chart 曲线(多曲线展示)
  6. 短信验证码接收网页版常见问题解答
  7. 如何屏蔽chrome浏览器内自带广告
  8. 15.unsafe类的CAS是怎么保证原子性的?
  9. 默纳克万能协议服务器图片,默纳克MDKE6万能协议                        使用说明...
  10. 微信公众平台测试账号的获取及开发使用【微信开发学习】