Qt GUI

Qt GUI 模块提供用于窗口系统集成、事件处理、OpenGL 和 OpenGL ES 集成、2D 图形、基本成像、字体及文本的类。这些类用于 Qt UI (用户界面) 技术内部,但也可以直接使用 (例如:使用低级 OpenGL ES 图形 API 编写应用程序)。

对于编写用户界面的应用程序开发者而言,Qt 提供更高级 API,像 Qt Quick,比 Qt GUI 模块中找到的使能器更合适。

使用模块

使用 Qt 模块的 C++ API 要求直接 (或透过其它依赖) 链接到模块库。几个构建工具对此有专用支持,包括 CMake and qmake .

构建采用 CMake

使用 find_package() 命令定位所需模块组件在 Qt6 包:

find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
					

更多细节,见 构建采用 CMake 概述。

采用 qmake 构建

若使用 qmake 去构建工程,默认包括 Qt GUI。要禁用 Qt GUI,添加以下行到 .pro 文件:

QT -= gui
					

文章和指南

参考

模块演变

Qt GUI 的变化 列出了 Qt 的 Qt 6 系列在模块 API 和功能上所做出的重要改变。

许可和归属

Qt GUI 在商业许可下是可用的来自 Qt 公司 。此外,它在自由软件许可下也是可用的: GNU LGPL (次一般公共许可) 第 3 版 ,或 GNU GPL (一般公共许可) 第 2 版 。见 Qt 许可 进一步了解细节。

Furthermore, Qt GUI in Qt 6.5.1 may contain third-party modules under following permissive licenses:

用于新字体的 Adobe Glyph 列表,第 1.7 版 BSD 3 条款新 (或修订) 许可
来自 FreeType 2 的抗锯齿光栅化器 FreeType 工程许可或仅 GNU GPL (一般公共许可) 第 2.0 版
Bitstream Vera字体,第 1.10 版 Bitstream Vera 字体许可
Cocoa 平台插件 BSD 3 条款新 (或修订) 许可
DejaVu 字体,第 2.37 版 Bitstream Vera 字体许可
Freetype 2 - BDF (位图分发格式) 支持 MIT 许可
Freetype 2 - PCF (便携式编译格式) 支持 MIT 许可和 MIT 开放组变体
Freetype 2 - zlib zlib 许可
Freetype 2, version 2.13.0 FreeType 工程许可或仅 GNU GPL (一般公共许可) 第 2.0 版
HarfBuzz-NG, version 7.2.0 MIT 许可
IAccessible2 IDL 规范,第 1.3.0 版 BSD 3 条款新 (或修订) 许可
LibJPEG-turbo, version 2.1.5 独立 JPEG 组许可和 BSD 3 条款新 (或修订) 许可及 zlib 许可
LibPNG, version 1.6.39 libpng 许可和 PNG 参考库,第 2 版
MD4C 第 0.4.8 版 MIT 许可
Android 本机风格 Apache 许可 2.0
OpenGL ES 2 头,修订版 27673 MIT 许可
OpenGL 头,修订版 27684 MIT 许可
Pixman,第 0.17.12 版 MIT 许可
平滑比例缩放算法 BSD 2 条款简化许可和 Imlib2 许可
Vulkan API 注册,第 1.3.223 版 Apache 许可 2.0 或 MIT 许可
Vulkan 内存分配程序,第 3.0.1 版 MIT 许可
WebGradients MIT 许可
Wintab API LCS 电报许可
X 服务器帮手 X11 许可和历史权限通知及免责声明
XCB-XInput MIT 许可
sRGB 颜色 profile icc 文件 国际色彩联盟许可