什么是Qt Widgets?一组创建经典桌面应用UI的界面组件!

news/2025/2/1 9:55:12/

Qt 是目前最先进、最完整的跨平台C++开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今,Qt已被运用于超过70个行业、数千家企业,支持数百万设备及应用。

Qt Widgets模块提供了一组UI元素来创建经典桌面样式的用户界面。

点击获取Qt Widget组件下载(Q技术交流:166830288)

什么是小部件(Widgets)?

Widgets是在Qt 中创建用户界面的主要元素,Widgets可以显示数据和状态信息,接收用户输入,并为其他应该分组在一起的Widget提供一个容器,没有嵌入父小部件的小部件称为窗口。

QWidget类提供了向屏幕呈现和处理用户输入事件的基本功能,Qt提供的所有UI元素要么是QWidget的子类,要么是与QWidget子类连接使用的。创建自定义小部件是通过创建QWidget或合适的子类并重新实现虚拟事件处理程序来完成的。

样式

样式代表小部件进行绘制,并封装GUI的外观。Qt的内置小部件使用QStyle类来执行几乎所有的绘图,确保它们看起来完全像等效的原生小部件。

Qt Style Sheets是一种强大的机制,它允许开发者自定义小部件的外观,此外还可以通过子类化QStyle实现。

布局

布局是一种优雅而灵活的方式,可以在其容器内自动排列子部件。每个Widgets(小部件)通过sizeHint和sizePolicy属性向布局报告其大小需求,然后布局相应地分配可用空间。

Qt Designer是一个强大的工具,用于交互式地创建和安排布局中的小部件。

模型/视图类

模型/视图体系结构提供了管理数据呈现给用户的方式的类,使用列表和表的数据驱动应用程序的结构是使用模型、视图和委托来分离数据和视图。

图形视图

Graphics View(图形视图)框架用于管理和交互大量定制的2D图形项,以及用于可视化这些项的视图小部件,支持缩放和旋转。

使用模块

使用Qt模块的C++ API需要直接或通过其他依赖项链接到模块库,一些构建工具对此有专门的支持,包括CMake和qmake。

用CMake构建

使用find_package()命令在Qt6包中找到所需的模块组件:

find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
用qmake构建

要配置模块来使用qmake进行构建,请在项目的.pro文件中将模块作为Qt变量的值添加:

QT += widgets


http://www.ppmy.cn/news/807493.html

相关文章

实验二 图像文件的转换和读写 bmp转yuv

实验目的: 1.理解bmp文件的基本组成; 2.实现bmp序列向yuv文件的转换(基本要求为24bit的bmp文件,进阶要求为支持小于24bit的bmp文件),并用YUV Viewer播放验证。 BMP文件格式: 典型的 BMP 图像文…

Games104-04 游戏引擎中的渲染实践

Games104-04 游戏引擎中的渲染实践 渲染概述在游戏渲染系统中的挑战 渲染系统的对象渲染管线和数据(Rendering Pipeline and Data)计算投影和栅格化计算阴影(Computation - Shading)计算纹理采样(Computation - Texture Sampling) 了解GPUSIMD and SIMTG…

[数据压缩作业4]BMP2YUV文件格式转换

一. 实验名称 图像文件的读写和转换(设计性实验) 二. 实验目的 1.理解图像文件的基本组成。 2.掌握结构体作为复杂数据对象的用法。进一步熟悉由问题到程序的解决方案,并掌握编程细节:如内存分配、倒序读…

Unity实战篇:移植游戏到安卓平台的注意事项及其实例(一)

这篇博客以Unity官方案例Space Shooter Tutorial为例。较为全面的讲解了游戏移植到安卓所需要的注意事项。 1.安卓和Java环境配置 https://blog.csdn.net/qq_15020543/article/details/80525743 2.分辨率设置 我们知道,当今手机屏幕的尺寸和分辨率可谓数不胜数&…

【数据压缩(四)】c语言实现BMP序列转YUV文件并播放

一、实验目的 1.理解图像文件的基本组成 2.掌握结构体作为复杂数据对象的用法。进一步熟悉由问题到程序的解决方案,并掌握编程细节:如内存分配、倒序读写、字节序、文件读写过程等 二、实验要求 (1)在图…

【实验1】BMP序列转YUV文件

文章目录 一、实验目的二、实验内容1.BMP文件的组成结构2.字节序 三、实验步骤及要求四、实验代码及结果 一、实验目的 理解图像文件的基本组成。掌握结构体作为复杂数据对象的用法。进一步熟悉由问题到程序的解决方案,并掌握编程细节:如内存分配、倒序…

BodyNet笔记

BodyNet: Volumetric Inference of 3D Human Body Shapes 三维人体形状的体积推断 Abstract: 人体形状估计是视频编辑、动画和时尚产业的一项重要任务。然而,由于人体、服装和视角等因素的影响,从自然图像中预测三维人体形状是非常具有挑战…

实验二YUV

BMP序列转YUV文件 实验目的 1.理解图像文件的基本组成。 2.掌握结构体作为复杂数据对象的用法。进一步熟悉由问题到程序的解决方案,并掌握编程细节:如内存分配、倒序读写、字节序、文件读写过程等。 实验要求 (1&…