[Qt 教程之开始的开始] —— Qt 模块

Qt系列教程总目录

1. Qt 模块简介

Qt由许多模块组成,分别支持不同领域的功能,主要分为 EssentialsAdd-On

Qt Essential 是基本模块,它们可以在所有受支持的开发平台和经过测试的目标平台上使用。基本模块是通用的,适用于大多数Qt应用程序。

Qt Add-On 是附加模块/扩展模块,用于特殊目的开发。这些模块可能仅在某些开发平台上可用。许多附加模块要么功能完整,存在是为了向后兼容,要么仅适用于某些平台。每个附加模块分别指定其兼容性。

1.1 Qt基本模块

Qt 基本模块如下表:

模块描述
Qt Core所有基于Qt的应用程序的基础,其他模块使用的核心非图形类。
提供信号与槽的对象通信机制、并发和多线程、容器/事件系统、插件和I/O设施。
Qt D-BusD总线协议上进程间通信的类。
是一种进程间通信(IPC)和远程过程调用(RPC)机制,一般用于用于多对多通信。
Qt GUI图形用户界面(GUI)组件的基类。
包括与窗⼝系统的集成、事件处理、OpenGL和OpenGL ES集成、2D图像、字体、拖放等。
这些类⼀般在Qt⽤户界⾯类内部使⽤,当然也可以⽤于访问底层的OpenGL ES 图像API。
Qt Gui模块提供的是所有图形⽤户界⾯程序都需要的通⽤功能。
Qt Network提供跨平台的⽹络功能,使网络编程更容易和更可移植。
Qt QML用于QML和JavaScript语言。
Qt Quick⼀种基于 Qt 的⾼度动画的⽤户界⾯,适合于移动平台开发,用于构建具有自定义用户界面的高度动态应用程序的声明性框架。
Qt Quick Controls提供轻量级QML类型,用于为桌面、嵌入式和移动设备创建高性能的用户界面。这些类型采用简单的样式体系结构,非常有效。
Qt Quick Dialogs用于从Qt快速应用程序创建系统对话框并与之交互的类型。
Qt Quick Layouts用于在 Qt Quick 2 中安排项目的布局。
Qt Quick TestQML应用程序的单元测试框架,其中测试用例以JavaScript函数的形式编写。
注:二进制兼容性保证不适用于 Qt 快速测试。但是,它将保持源代码兼容。
Qt Test用于单元测试 Qt 应用程序和库的类。
注意:二进制兼容性保证不适用于 Qt 测试。 但是,它将保持源兼容。
Qt Widgets扩展Qt GUI模块的C++窗口类 。
1.2 Qt扩展模块

Qt扩展模块如下表:

模块开发平台目标支持平台描述
Active QtWindowsWindows用于ActiveX和COM应用程序的类
Qt BluetoothAllAndroid, iOS, Linux, Boot to Qt, macOS and Windows提供对蓝牙硬件的访问。
Qt 3DAllAll支持2D和3D渲染的近实时仿真系统的功能。
Qt CoAPAllAll实现RFC 7252定义的CoAP客户端。
Qt ConcurrentAllAll用于编写多线程程序而不使用低级线程原语的类。
Qt HelpAllAll用于将文档集成到应用程序中的类。
Qt Image FormatsAllAll用于其他图像格式的插件:TIFF、MNG、TGA、WBMP。
Qt OpenGLAllAll使OpenGL在Qt应用程序中易于使用的C++类。一个单独的Qt OpenGL Widgets C++类,提供了一个用于渲染OpenGL图形的窗口小部件。
Qt MultimediaAllAll (except QNX, INTEGRITY)一组丰富的QML类型和C++类,用于处理多媒体内容。还包括处理摄像头访问的API。
Qt Print SupportAllAll使打印更容易和更便携的类。
Qt Quick WidgetsAllAll提供用于显示Qt快速用户界面的C++类。
Qt Remote ObjectsAllAll提供了一种易于使用的机制,用于在进程或设备之间共享QObject的API(属性/信号/插槽)。
Qt OPC UAAllAll (except QNX, WebAssembly)工业应用中数据建模和数据交换协议。
Qt SCXMLAllAll提供用于从SCXML文件创建状态机并将其嵌入应用程序的类和工具。
Qt SensorsAllAndroid, iOS, and Windows提供对传感器硬件的访问。
Qt Serial BusAllLinux, Boot to Qt, macOS and Windows提供对串行工业总线接口的访问。目前,该模块仅支持CAN总线和Modbus协议。
Qt Serial PortAllLinux, Boot to Qt, macOS and Windows提供与硬件和虚拟串行端口交互的类。
Qt SQLAllAll使用SQL进行数据库集成的类。
Qt State MachineAllAll提供用于创建和执行状态图的类。
Qt SVGAllAll用于显示SVG文件内容的类。支持SVG1.2标准的一个子集。一个单独的Qt SVG Widgets C++类库,支持在Widgets UI中显示SVG文件。
Qt UI ToolsAllAll用于在运行时动态加载QtDesigner中创建的基于QWidget的表单的类。
Qt WebChannelAllAll提供对来自HTML客户端的QObject或QML对象的访问,以实现Qt应用程序与HTML/JavaScript客户端的无缝集成。
Qt WebEngineAllWindows, Linux, and macOS用于在使用Chromium浏览器项目的应用程序中嵌入web内容的类和函数。
Qt WebSocketsAllAll提供符合RFC 6455的WebSocket通信。
Qt WebViewAll具有本地web引擎的平台通过使用平台原生的API在QML应用程序中显示web内容,而无需包含完整的web浏览器堆栈。
Qt XMLAllAll在文档对象模型(DOM)API中处理XML。
Qt PositioningAllAndroid, iOS, macOS, Linux and Windows提供位置、卫星信息和区域监测类的访问。
Qt NFCAllAndroid and iOS提供对近场通信(NFC)硬件的访问。

以下扩展模块需要在商业许可证或GNU通用公共许可证v3下使用。

模块开发平台目标支持平台描述
Qt ChartsAllAll由静态或动态数据模型驱动的用于显示图表的UI组件。
Qt Data VisualizationAllAll用于创建三维数据可视化的UI组件。
Qt Lottie AnimationAllAll用于渲染由Adobe After Effects的Bodymovin插件以JSON格式导出的图形和动画。
Qt MQTTAllAll提供MQTT协议规范的实现。
Qt Network AuthorizationAllAll为在线服务提供基于OAuth的授权支持。
Qt Virtual KeyboardAllLinux and Windows desktop, and Boot to Qt targets.用于实现不同输入方法以及QML虚拟键盘的框架。支持本地化键盘布局和自定义视觉主题。
Qt Quick 3DAllAll提供基于Qt Quick创建3D内容或UI的高级API。
Qt Quick TimelineAllAll启用基于关键帧的动画和参数化。
Qt Shader ToolsAllAll为跨平台Qt着色器管道提供工具。这些支持处理图形和计算着色器,使其可用于Qt Quick和Qt生态系统中的其他组件。
Qt Wayland CompositorAllLinux and Boot to Qt targets.提供开发Wayland合成器的框架。

以下扩展模块仍在开发中:

模块开发平台目标支持平台描述
Qt PDFAllWindows, Linux, and macOS.用于显示PDF文档的类和函数。
  • 4
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

万俟淋曦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值