[01] Qt的UI框架选择和对比

Qt作为跨平台应用开发的主流框架,其生态中衍生出多种开源UI扩展库,为了好看嘛,也为了效率。个人在网上找到了一些开源的UI框架并做了一些对比,最终选择了ElaWidgetTool。

一、QFluentWidgets

官方地址: https://qfluentwidgets.com/zh/

QFluentWidgets是一个基于 Qt 的 Fluent Designer 组件库,内置超过 150 个开箱即用的 Fluent Designer 组件。该库支持亮暗主题无缝切换和自定义主题色,非常适合需要现代化 UI 的应用程序。通过搭配所见即所得的 Fluent Designer 软件使用,开发者只需拖拽即可快速搭建界面,无需编写一行 QSS 代码。这使得界面设计和开发过程更加便捷和高效。

很好看,大概是效果最好的组件库,但是同时也是最贵的,商用得花4k,个人花200r左右;

二、TaoQuick

官方地址: https://gitee.com/jaredtao/TaoQuick

TaoQuick 是一个 QtQuick/Qml 组件库,集成了常用的 QtQuick 组件,并进行了适当的属性封装和功能扩展。这个库的目标是方便开发者在 Qml 程序中使用。它不仅包含了各种基础组件如按钮、输入框、列表视图等,还提供了丰富的示例程序和详细的文档,帮助开发者更好地理解和使用这些组件。

主要是Quick/Qml的比较适合,话说都Qml了为啥不直接eletrcton.国内一个大佬做的

三、QCustomUI

QCustomUI 是一个主要提供无边框窗口和自定义控件的 UI 库,适用于那些需要定制化界面的 Qt 项目。该库已在 Qt 5.15.2 和 Qt 6 版本上测试通过,并提供了设计器插件,可以直接在 Qt Designer 和 Qt Creator 中使用。这种无缝集成大大提高了开发的便利性。

Custom几百star但是比较新有个人开发者维护

四、qt-material-widgets

官方地址 : https://github.com/laserpants/qt-material-widgets

基于 QtWidget 的 Material 风格组件库,实现了约 20 个 Material 风格的组件。这些组件包括进度条、滚动条、对话框、抽屉式导航栏、浮动操作按钮等,都是按照 Material Design 的视觉规范设计的。使用这些组件可以很容易地在 Qt 应用中实现 Google 的 Material 设计风格。

Material 有几KStar但是20年已停止更新,下载下来编过了用了一下还行就是组件有点少

五、ElaWidgetTool

官方地址: https://github.com/Liniyous/ElaWidgetTools

ElaWidgetTool 是一个基于 Qt 的 Fluent 风格 UI 组件库,由 B 站用户 _Ela 开发,支持在 VSCode 中编译并可导入个人项目使用。该组件库采用 QWidget 实现,具备主题切换、导航系统、路由跳转等功能,并提供丰富的炫酷视觉效果,开发者可通过 GitHub 获取源码并集成到本地项目中。

接近2k的star,非常丝滑的UI效果比肩QFluentWidgets,且活跃维护中。如果唯一要说缺点那就是得纯代码构建了,不支持UI拖拽

结尾

经过对比测试,ElaWidgetTool 在视觉效果和开发效率上表现突出,无论是预置的现代化组件还是灵活的定制能力,都能为 Qt 应用注入更多活力。

你是否也在寻找类似的 UI 解决方案?欢迎在评论区分享你使用过的开源框架,或讨论对 ElaWidgetTool 的实际体验!

相关推荐
東隅已逝,桑榆非晚1 小时前
算法6. 双指针法-查找总价格为目标的两个商品
c++·学习·算法
秋名山小白1 小时前
Playwright UI 自动化测试实战教程
python·ui
qq_406981032 小时前
c++拷贝构造函数
开发语言·c++
爱喝雪碧的可乐3 小时前
MATLAB
开发语言·算法·matlab
叼烟扛炮3 小时前
Linux 学习笔记(五十):网络层——IP 协议、子网划分与 NAT 魔法
linux·笔记·学习
叼烟扛炮3 小时前
Linux 学习笔记(六十):单线程的逆袭——epoll 高并发服务器实战
linux·服务器·网络·笔记·学习·算法
H.莓飛4 小时前
【C++】【STL】vector_OJ题
linux·服务器·开发语言·数据结构·c++·visual studio
Rabitebla4 小时前
【Linux操作系统】进程篇(十一):进程程序替换——从底层原理到 exec 函数族
linux·服务器·c++·笔记·学习·算法
沫璃染墨5 小时前
从零入门计算机网络系列(十五):TCP可靠传输机制详解——从序号与确认应答到乱序处理
服务器·网络·c++·tcp/ip·tcp
青少儿编程课堂5 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:Bellman-Ford与SPFA含负权最短路及负环检测全解析
c++·python·算法·bfs·信息学竞赛