分为以下几大类:

  • 基本模块 (Qt Essentials): 提供了Qt在所有平台上的基本功能
  • 附加模块 (Qt Add-Ons): 实现一些特定功能的提供附加价值的模块
  • 增值模块 (Value-AddModules): 单独发布的提供额外价值的模块或工具
  • 技术预览模块 (Technology Preview Modules): 处理开发阶段,但是可以使用的
  • Qt工具 (Qt Tools): 帮助应用程序开发的一些工具

基本模块

  • Qt Core: 其他模块都用到的核非图形类
  • Qt GUI: 设计GUI界面的基础类,包括 OpenGL
  • Qt Multimedia: 音频,视频,摄像头和广播功能的类
  • Qt Multimedia Widgets: 实现多媒体功能的界面组件类
  • Qt Network: 使网络编程更简单和轻便的类
  • Qt QML: 用于QML和JavaScript语言的类
  • Qt Quick: 用于构建具有定制用户界面的动态应用程序的声明框架
  • Qt Quick Controls: 创建桌面样式用户界面,基于 Qt Quick的控件
  • Qt Quick Dialogs: 用于Qt Quick的系统对话框类
  • Qt Quick Layouts: 用于Qt Quick2界面元素的布局项
  • Qt SQL: 使用SQL数据库操作类
  • Qt Test: 用于应用程序和为进行单元测试类
  • Qt Widgets: 用于构建GUI界面的C++图形组件类

默认使用qmake构建时,都会自动包含(Qt Core和Qt GUI)模块

  • 如果不需要GUI模块,可以在项目配置中添加:QT -= gui
  • 其它模块不会自动加入,在项目中使用某个模块,可以在项目配置中添加:QT += multimedia multimediawidgets QT += sql

附加模块

  • Active Qt: 开发使用ActiveX和COM的Windows应用程序
  • Qt 3D: 支持2D和3D渲染,提供开发近实时仿真系统功能
  • Qt Android Extras: 提供Android平台相关的API
  • Qt Bluetooth: 提供访问蓝牙硬件的功能
  • Qt Concurrent: 提供的一些类,无需使用底层的线程控制就能编写多线程程序
  • Qt D-Bus: 使进程间通过D-Bus协议通信的类
  • Qt Gamepad: 使Qt应用程序支持游戏手柄硬件
  • Qt Image Formats: 支持附加图片格式的插件,包括 TIFF, MNG,TGA,WBMP
  • Qt Mac Extras: 提供macOS平台相关的API
  • Qt NFC: 提供访问NFC(近场通信)硬件功能
  • Qt Positioning: 用于通过GPS卫星,wifi等定位
  • Qt Print Support: 提供打印控制的类
  • Qt Purchasing: 提供Qt应用程序内购买功能的类
  • Qt Sensors: 访问传感器硬件的功能,以识别运动和手势
  • Qt Serial Bus: 访问串行工业总线功能,目前只支持CAN和Modbus协议
  • Qt SVG: 提供显示SVG图片文件的类
  • Qt WebChannd: 用于实现服务器端(QML或C++应用程序)与客户端之间的P2P通信
  • Qt WebEngine: 实现应用程序中嵌入网页
  • Qt WebSocket: 提供兼容于RFC 6455的WebSocket通信
  • Qt Windows Extras: 提供 Windows 平台相关 API
  • Qt XML: 该模块不再维护,使用 QtCore 中的 QXmlStreamReadQXmlStream Writer Qt XML Patterns 提供对 XPath, XQuery, XSLT 和 XML 的支持
  • Qt Charts: 用于数据显示的二维图表组件
  • Qt Data Visualization: 用于 3D 数据可视化显示的界面组件
  • Qt Virtual Keyboard: 实现不同输入法的虚拟键盘框架

Qt 附加模块可以实现一些特定目的。可能只在某些开发平台上有,或只能用于某些操作系统,或只为了向后兼容

Qt 工具

  • Qt Designer: 用于扩展 Qt Designer 的类
  • Qt Help: 在应用程序中集成在线文档的类,实现类似于 Qt Assistant 的功能
  • QtUI Tools: 操作 Qt Designer 生成的窗体的类