Qt Widgets
用户界面 Qt Widgets Module提供了一组用户界面元素,用于创建经典的桌面风格用户界面。有关使用部件的更多信息,请参阅用户界面概述。
窗口小部件
部件是 Qt 中创建用户界面的主要元素。Widget可以显示数据和状态信息,接收用户输入,并为其他应组合在一起的 Widget 提供容器。未嵌入父窗口部件的窗口部件称为窗口。
QWidget 类提供了向屏幕呈现和处理用户输入事件的基本功能。Qt XML 提供的所有 UI 元素要么是QWidget 的子类,要么与QWidget 子类相关联使用。要创建自定义部件,可子类QWidget 或一个合适的子类,并重新实现虚拟事件处理程序。
样式
样式代表窗口部件进行绘制,并封装 GUI 的外观和感觉。Qt 的内置 widgets 使用QStyle 类来执行几乎所有的绘制,确保它们看起来与等效的本地 widgets 一模一样。
Qt 样式表(Qt Style Sheets)是一种功能强大的机制,除了通过子类化QStyle 已能实现的功能外,它还能让你自定义部件的外观。
布局
布局是一种优雅而灵活的方式,可自动将子部件排列在其容器中。每个部件都会通过sizeHint 和sizePolicy 属性向布局报告其尺寸要求,布局会相应地分配可用空间。
Qt Widgets Designer在布局中交互式创建和排列部件的强大工具。
模型/视图类
模型/视图架构提供了管理向用户展示数据方式的类。使用列表和表格的数据驱动型应用程序在结构上使用模型、视图和委托来分离数据和视图。
图形视图
图形视图框架用于管理大量定制的二维图形项目并与之交互,视图部件用于将项目可视化,并支持缩放和旋转。
使用模块
使用 Qt 模块的 C++ API 需要直接或通过其他依赖关系与模块库链接。一些构建工具为此提供了专门支持,包括CMake和qmake。
使用 CMake 构建
使用find_package()
命令在Qt6
软件包中找到所需的模块组件:
find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets)
更多详情,请参阅使用 CMake 构建概述。
使用 qmake 构建
要配置使用 qmake 构建的模块,请在项目的 .pro 文件中添加模块作为QT
变量的值:
QT += widgets
文章和指南
示例
API 参考
模块演变
对Qt Widgets 的更改列出了 Qt 6 系列 Qt 在模块 API 和功能方面的重要更改。
许可证
Qt Widgets 模块可在Qt Company 的商业许可下使用。此外,它还受自由软件许可证的保护:GNU 宽通用公共许可证第 3 版或GNU 通用公共许可证第 2 版。更多详情,请参阅Qt 许可。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.