当你安装Qt时,这些模块会被构建到库中。在Qt企业版、Qt评估版和Qt自由版中,包含所有的模块。对于Qt专业版,提供基本的模块——工具、核心、窗口部件、对话框、图标视图和工作区模块。
画布模块
画布模块提供了一个名为QCanvas的高度优化的二维绘图区。 画布可以有任意数量的QCanvasItems。画布项则可以有任意的形状、尺寸和内容,在画布中能自由的移动,并且能被检查出是否有冲突。画布项能被设置成在画布中自动地移动以及使画布项支持QCanvasSprite。(如果你需要三维绘图请看Qt的OpenGL模块。)
画布模块使用文档/视图模型。QCanvasView 类是被用来显示画布的特定视图。多视图能同时在同一画布中显示。每一个视图在画布中使用一个任意的变换矩阵,以便能使其容易的实现诸如缩放的特性。
图标视图模块
图标视图模块提供了一个功能强大的名为QIconView可视化窗口部件。API和特性类似于QListView和QListBox。它包含可选的带标签图片条目,这些条目可供用户选择、拖拽、重命名、删除以及更多操作。
网络模块
这个模块是Qt企业版的一部分,提供了强大的网络功能
OpenGL模块
OpenGL是为三维绘图提供的标准应用编程接口。
OpenGL处理的仅仅是三维绘图方面,而很少或是根本不提供图形用户界面编程方面的支持。OpenGL*应用程序的用户界面必须由其它工具包创建,比如在X平台下的Motif,在Windows平台下的微软基本类库(MFC)——或是在这两种平台下都能使用的Qt。
Qt的OpenGL模块使在Qt应用程序中使用OpenGL变的更加容易。它提供了一个OpenGL的部件类,这个部件类除了打开一个OpenGL显示缓冲,利用这个缓冲使用OpenGL应用编程接口来提供内容外,能像其它Qt部件那样的使用,。
Qt OpenGL模块的运作是一个与平台无关的Qt/C++的包装,这个包装则是和平台有关的GLX、WGL或AGL的C的应用编程接口。 其提供的功能则是和Mark Kilgard的GLUT库极为相似,但是Qt的OpenGL模块还有更多的非OpenGL特有的GUI机能,即它们都是Qt的应用编程接口。
SQL模块
Qt的SQL类帮助你给你的Qt应用程序提供无缝的数据库集成。
SQL类分成以下三层:
用户接口层。这些类提供了基于数据的窗口部件,这些窗口部件不仅连接数据库还可为用户所浏览。(以QSqlCursor作为数据源)。终端用户通过这些组件来浏览与编辑数据。Qt设计器集成了这些类并可用来创建基于数据的窗体。这些窗口部件也可在程序中与你的C++代码直接交互。支持这一层的类包括QSqlEditorFactory、QSqlForm、QSqlPropertyMap、QDataTable、QDataBrowser和QDataView。
SQL应用编程接口层。这些类存取数据库。QSqlDatabase类用来连接数据库。数据交互的实现要么通过QSqlQuery类以SQL语句来实现,要么用QSqlCursor类,它封装了SQL命令集。除了QSqlDatabase、QSqlCursor和QSqlQuery这些类外,QSqlError、QSqlField、QSqlIndex和QSqlRecord也支持该层。
驱动程序层。本层由三个类组成:QSqlResult、QSqlDriver和QSqlDriverFactoryInterface。这个层在数据库和SQL类之间提供了底层的桥梁。这个层的文档是另外的,因为它只和驱动程序编写者有关,并且在标准数据库应用程序编程中很少用到。
表格模块
表格模块提供了一个灵活的和可编辑的表格部件,QTable。对很多应用程序来说,QTable能直接地、简单地拿来使用, 并且QTable提供了一个可编辑单元的栅格。QTable能够通过一个直接的方式被派生,并能提供很大的稀疏的表格。表格模块提供了以下这些类:
QTable自身是一个抽象的部件,用在当你需要提供给你的用户显示和编辑表列数据,诸如电子数据表或数据库数据。
QTableItem对象用在含有数据的QTable中,每一个表项含有一个单元的内容。
QComboTableItem类为QTable提供了高效内存的combobox项。
QCheckTableItem类为QTable提供了高效内存的checkbox项。
QTableSelection提供了访问一个QTable中所选择的单元。
QHeader提供了访问表格的水平标题(列标题)和垂直标题(行标题)。
工作区(MDI)模块
工作区模块提供了一个工作区窗口,这个窗口包含为多文档界面(MDI)修饰过的文档窗口。
它是在一个单独的类QWorkspace中实现的。
XML模块
XML是Qt企业版的一部分,提供强大的XML解析和构建功能