所有模块

Qt 核心功能

Qt 核心功能定义了所有平台上 Qt 的基础。它们适用于所有受支持的开发平台和测试目标平台。除了测试模块(保持源兼容性),这些模块在整个 Qt 6 期间将保持源代码和二进制兼容性。

核心模块是通用的,适用于大多数 Qt 应用程序。即使在某些支持平台上可用,用于特定目的的模块也被认为是附加模块。

以下表格列出了 Qt 核心功能

模块描述
Qt 核心库其他模块使用的核心非图形类。
Qt D-Bus用于 D-Bus 协议的进程间通信类。
Qt GUI图形用户界面(GUI)组件的基类。
Qt 网络简化网络编程并提高可移植性的类。
Qt QmlQML 和 JavaScript 语言的类。
Qt Quick用于构建具有自定义用户界面的高度动态应用程序的声明性框架。
Qt Quick 控件提供用于创建性能优良的桌面、嵌入式和移动设备用户界面的轻量级 QML 类型。这些类型采用了简单的样式架构,并且非常高效。
Qt Quick 对话框用于从 Qt Quick 应用程序创建和交互系统对话框的类型。
Qt Quick 布局布局是用于在用户界面中排列 Qt Quick 2 基于项目的项目。
Qt Quick 测试一个用于 QML 应用程序的单元测试框架,其中测试用例以 JavaScript 函数的形式编写。

注意: 二进制兼容性保证不适用于 Qt Quick 测试。然而,它将保持源代码兼容性。

Qt 测试用于单元测试 Qt 应用程序和库的类。

注意: 二进制兼容性保证不适用于 Qt 测试。然而,它将保持源代码兼容性。

Qt 小组件用于用 C++ 小组件扩展 Qt GUI 的类。

Qt 附加组件

Qt 附加组件 模块为特定目的带来额外的价值。这些模块可能仅在某些开发平台上可用。许多附加模块要么是功能完整的,为了后向兼容而存在,要么仅适用于特定平台。每个附加模块都单独指定其兼容性承诺。

Qt 安装程序包括下载附加组件的选项。有关更多信息,请访问 Qt 入门 页面。

以下表格列出了 Qt 附加组件

模块开发平台目标平台描述
Active QtWindowsWindows用于使用 ActiveX 和 COM 的应用程序的类
Qt 3D所有所有支持 2D 和 3D 渲染的近实时仿真系统功能。
Qt 5 核心兼容 API所有所有Qt 5中存在但在Qt 6中不存在的核心API。
Qt 蓝牙所有AndroidiOSLinux引导至QtmacOSWindows提供对蓝牙硬件的访问。
Qt 并发所有所有用于编写不使用低级线程原语的多线程程序的类。
Qt 帮助所有所有用于将文档集成到应用程序中的类。
Qt 图像格式所有所有支持额外图像格式的插件:TIFF,MNG,TGA,WBMP。
Qt 多媒体所有所有*提供处理多媒体内容的一整套QML类型和C++类。还包含处理摄像头访问的API。
Qt NFC所有AndroidiOSmacOSLinuxWindows提供对近距离通信(NFC)硬件的访问。在桌面平台上仅支持Type 4标签的NDEF访问。
Qt OPC UA所有全部(除QNX,WebAssembly)适用于工业应用的协议,用于数据建模和交换。
Qt OpenGL所有所有简化Qt应用程序中OpenGL使用的C++类。一个单独的库的Qt OpenGL小部件C++类提供用于渲染OpenGL图形的小部件。
Qt PDF所有WindowsLinuxmacOS用于渲染PDF文档的类和函数。
Qt 定位所有AndroidiOSmacOSLinuxWindows提供对位置、卫星信息和区域监控类的访问。
Qt 打印支持所有全部(除iOS)使打印更容易和更便携的类。
Qt Quick小部件所有所有提供用于显示Qt Quick用户界面的C++小部件类。
Qt Quick效果所有所有提供用于将一个或多个简单图形效果应用于Qt Quick元素的QML类型。
Qt Quick粒子所有所有提供用于粒子效果的QML类型。
Qt 远程对象所有所有提供一种在进程或设备之间共享QObject的API(属性/信号/槽)的简单机制。
Qt SCXML所有所有提供用于从SCXML文件创建状态机并将它们嵌入到应用程序中的类和工具。
Qt 传感器所有AndroidiOSWindows提供对传感器硬件的访问。
Qt 串行总线所有Linux引导至QtmacOSWindows提供对串行工业总线接口的访问。目前,该模块支持CAN总线和Modbus协议。
Qt 串行端口所有Linux引导至QtmacOSWindows提供与硬件和虚拟串行端口交互的类。
Qt 着色器工具所有所有提供用于跨平台Qt着色器管道的工具。这些工具使图形和计算着色器可被Qt Quick和其他Qt生态系统中的组件使用。
Qt 空间音频所有所有提供对空间音频的支持。在三维空间中创建包含不同声音源和相关属性(如混响)的声景。
Qt SQL所有所有用于使用SQL进行数据库集成的类。
Qt 状态机所有所有提供创建和执行状态图的类。
Qt SVG所有所有用于显示SVG文件内容的类。支持SVG 1.2 Tiny标准子集。一个单独的库的Qt SVG小部件C++类提供在widget UI中渲染SVG文件的支持。
Qt 文本语音所有所有支持从文本合成语音并将其作为音频输出播放。
Qt UI工具所有所有用于在运行时动态加载在Qt Designer中创建的基于QWidget的表单的类。
Qt 网络频道所有所有为HTML客户端提供对QObject或QML对象的无缝访问,以便将Qt应用程序与HTML/JavaScript客户端集成。
Qt WebEngine所有WindowsLinuxmacOS用于在应用程序中嵌入使用Chromium浏览器项目的Web内容的类和函数。
Qt WebSocket所有所有提供符合RFC 6455的WebSocket通信。
Qt WebView所有具有本地Web引擎的平台。通过使用平台的原生API在QML应用程序中显示Web内容,而无需包含完整的Web浏览器堆栈。
Qt XML所有所有使用文档对象模型(DOM)API处理XML。

商业许可或GNU通用公共许可证v3下提供的附加组件。

Qt Charts所有所有用于显示美观图表的UI组件,由静态或动态数据模型驱动。
Qt CoAP所有所有实现了由RFC 7252定义的CoAP客户端。
Qt数据可视化所有所有创建迷人3D数据可视化的UI组件。
Qt Lottie动画所有所有一个QML API,用于在JSON格式中渲染由Adobe® After Effects的Bodymovin插件导出的图形和动画。
Qt MQTT所有所有提供MQTT协议规范的实现。
Qt网络身份验证所有所有为在线服务提供基于OAuth的身份验证支持。
Qt Quick 3D所有所有提供基于Qt Quick的高层API,用于创建3D内容或UI。
Qt Quick 3D物理所有除了QNX和INTEGRITY之外的所有支持平台。Qt Quick 3D物理通过添加物理仿真功能到Qt Quick 3D,提供了一个高层次的QML模块。
Qt Quick时间轴所有所有启用基于关键帧的动画和参数化。
Qt虚拟键盘所有LinuxWindows桌面,以及Boot to Qt目标。一个实现不同输入方法以及QML虚拟键盘的框架。支持本地化键盘布局和自定义视觉主题。
Qt Wayland CompositorLinuxLinuxBoot to Qt目标。提供开发Wayland合成器的框架。

注意:所有指的是除INTEGRITY之外的所有支持平台。

以下附加组件仍在开发中,但作为技术预览提供

Qt技术预览附加组件

模块开发平台目标平台描述
Qt HTTP服务器所有所有一个将HTTP服务器嵌入Qt应用程序的框架。
Qt Protobuf所有所有从protobuf规范中生成基于Qt的类的功能。
Qt图形所有所有提供以条形图、散点图和曲面图可视化为3D数据的函数。
Qt GRPC所有所有提供从用于与gRPC®服务通信的protobuf规范生成基于Qt的类的功能。
Qt位置所有所有提供创建位置感知应用程序的QML和C++接口。

从这里开始

我们邀请您探索Qt的其他功能。我们准备了概述,以帮助您决定使用哪个API,并提供了示例代码和教程以演示如何使用我们的API。

© 2024 Qt Company Ltd. 本文档中的文档贡献为各自所有者的版权。本提供的文档受 GNU 自由文档许可第 1.3 版 许可,该许可由自由软件基金会出版。Qt 和相关标志是芬兰及/或世界其他地区 Qt Company Ltd. 的商标。所有其他商标均属于其各自所有者。