QML 应用程序
QML 是一种声明性语言,它允许根据视觉组件以及它们如何交互和相互关联来描述用户界面。它是一种高度可读的语言,旨在使组件能够以动态方式互连,并且允许组件在用户界面中轻松重用和定制。使用该QtQuick
模块,设计人员和开发人员可以轻松地在 QML 中构建流畅的动画用户界面,并可以选择将这些用户界面连接到任何后端 C++ 库。
什么是 QML?
QML 是一种用户界面规范和编程语言。它允许开发人员和设计人员创建高性能、流畅的动画和视觉上吸引人的应用程序。QML 提供了一种高度可读的、声明性的、类似 JSON 的语法,支持结合动态属性绑定的命令式 JavaScript 表达式。
QML 语言和引擎基础设施由Qt QML模块提供。有关 QML 语言的详细信息,请参阅Qt QML模块文档。
以下页面包含有关 QML 的更多信息:
-
QML 的第一步- 通过这些示例开始使用 QML
-
在 Qt Creator 中创建 Qt Quick 项目
-
QML 参考- 关于 QML 构造和功能的参考
-
QML 编码约定
-
QML 术语表
什么是 Qt Quick?
Qt Quick 是 QML 类型和功能的标准库。它包括视觉类型、交互类型、动画、模型和视图、粒子效果和着色器效果。QML 应用程序开发人员可以通过单个导入语句访问所有这些功能。
QML库QtQuick由Qt Quick模块提供。有关 Qt Quick 提供的各种 QML 类型和其他功能的深入信息,请参阅Qt Quick模块文档。
QML 用户界面
为了创建或自定义图形用户界面,Qt Quick 除了来自 Qt QML 的标准 QML 类型之外,还添加了视觉类型、动画类型和其他 QML 类型。Qt Quick Designer 集成在 Qt Creator 中,并支持QtQuick 2
Qt Creator 2.7 及更高版本。
-
QML 中的视觉类型
-
在 QML 中响应用户输入
-
QML 中的动画
-
在 QML 中显示文本
-
QML 中的布局
-
风格和主题支持
-
在 QML 中集成 JavaScript
-
可扩展性
按钮、菜单和其他控件
对于一组基本的 UI 控件,Qt Quick Controls模块实现了几个控件,例如按钮、菜单和视图。这些控件带有几个可以使用的内置样式,并且还支持创建自定义样式。
-
Qt 快速控制指南
-
Qt 快速模板 2
特殊效果
几个 Qt 模块提供了在应用程序中创建特殊效果的类型。他们各自的页面包含有关特定用途的更多信息
-
粒子效果
-
图形效果- 用于创建图像合成效果。
在 QML 应用程序中查看 Web 内容
QML 类型WebEngineView和WebView渲染和显示动态 Web 内容。两者之间的唯一区别是后者使用本机 Web 视图(如果可用)。这两种类型都可以加载 URL 或 HTML 字符串。要了解有关它们的更多信息并查看代码示例,请参阅Qt WebEngine和Qt WebView。
传感器、手势和触摸界面
Qt Sensors模块允许应用程序从加速度计和倾斜传感器等传感器读取信息。有一个针对不同平台的通用 QML API,并且可以在 C++ 中进行扩展。
-
Qt 传感器 QML 类型
-
Qt 传感器示例
-
兼容性地图- 列出不同移动平台的支持级别
多媒体内容
Qt Multimedia模块使应用程序能够使用一组方便的 QML 类型来处理各种媒体内容。这些 QML 类型可以在 C++ 中进行扩展。
-
多媒体
-
音频概览
-
视频概述
-
相机概述
-
无线电概述
-
Qt Audio Engine - 用于 3D 位置音频播放和内容管理。
-
移动设备
几个 Qt 模块为联网和移动设备提供 QML API。QML 类型提供对蓝牙、近场通信 (NFC) 和支持 GPS 的设备的访问。
-
Qt定位
-
Qt 位置
-
Qt 蓝牙
-
Qt NFC
有关更多信息,请访问网络和连接以及移动 API页面。
代码示例和演示
要了解有关 QML 代码使用的更多信息,有几个代码示例展示了如何使用 QML 类型。此外,还有几个演示展示了如何在应用程序中使用 QML 代码。
-
Getting Started Programming with Qt Quick - 一个展示创建简单 QML 文本编辑器的教程。
-
Qt 快速示例和教程
高级应用程序开发主题
-
集成 QML 和 C++
-
部署 QML 应用程序
-
QML 和 Qt Quick 的最佳实践
-
性能注意事项和建议
-
国际化和本地化
-
测试和调试
-
使用 qml 运行时工具进行原型设计
-
调试 QML 应用程序
-
Qt 快速测试:QML 单元测试框架
其他 QML 模块
-
Qt Quick 仅提供基本的视觉类型,Qt 的大部分功能通过其他模块暴露给 QML。如果您需要这些模块的功
能,您应该浏览它们的 QML 文档。
All QML APIs by Module包含 Qt 5 中所有 QML 模块的列表。
相关话题
-
将 QML 应用程序移植到 Qt 5