Qt GUI 模块

  在core模块之上,就是最为重要的GUI模块了。Qt4中只有QtGui模块,UI相关的功能都封装在一起。Qt5中拆分为GUI、Widget两个模块。GUI模块提供桌面系统集成,事件处理,OpenGL/Vulkan,基础图像,字体等功能。通过链接1 可知,GUI模块的class 是相当少的。但是,它们却是Qt 界面技术的核心。我们甚至可以不使用Qt Widget 模块,也能做出来符合设计的UI功能。其中,QSurface,QWindow,QPainter是基础,其他设计都围绕着它们而来。

  要注意,QWindow 只是Qt5 之后引进的。Qt4中,UI相关的功能,都封装在Qt GUI模块。Qt4的设计我们也就不讨论了,只看看Qt5。

  UI绘制,就是二维渲染。Qt支持多种渲染方式。这就像做三维显示,OpenGL、Vulkan、Metal这三种渲染接口都能实现。Qt的二维渲染,支持如下接口:

QSurface::RasterSurface
QSurface::OpenGLSurface
QSurface::RasterGLSurface
QSurface::OpenVGSurface
QSurface::VulkanSurface
QSurface::MetalSurface

  虽然支持矢量绘制硬件加速,但是我并没有见到真的实现。即使是GDI+、Direct2D,似乎都没有硬件厂商去支持,都是software implementation。更何况Qt需要考虑跨平台,我更不认为这些选项中,Qt真的支持纯2D矢量渲染硬件加速。官方有如下声明:

A QWindow created with the QSurface:

GNU Radio中的QT GUI Range模块是一个用于显示单个值的滑块或旋钮的QT图形用户界面小部件。通过该模块,您可以创建一个可视化的滑块或旋钮,方便用户输入数字值,例如频率、增益、阈值等等。该模块还提供了一些选项,例如设置初始值、范围、步长和单位等。 使用QT GUI Range模块非常简单。首先,在GNU Radio的Flow Graph中添加一个QT GUI Range模块。然后,您可以通过双击模块来打开属性编辑器,在其中设置模块的选项,例如名称、单位、范围、步长和初始值等。最后,将模块连接到其他模块中,例如数字信号处理模块或其他QT GUI模块中,以实现完整的GNU Radio应用程序。 下面是一个简单的例子,演示如何在GNU Radio中使用QT GUI Range模块: 1. 首先,打开GNU Radio Companion并创建一个新的流图。 2. 在流图中添加一个QT GUI Range模块,并将其命名为“频率”。 3. 双击模块以打开属性编辑器,并设置模块选项,例如设置名称为“频率”、单位为“Hz”、范围为“0-1000”、步长为“1”和初始值为“500”。 4. 将QT GUI Range模块连接到其他模块中,例如一个信号源模块。 5. 运行GNU Radio应用程序,并使用QT GUI Range模块中的滑块来更改信号源的频率。 通过这个简单的例子,您可以看到QT GUI Range模块的基本用法。您可以使用QT GUI Range模块来创建各种不同类型的滑块或旋钮,以便用户方便地输入数字值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值