[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 的实际体验!

相关推荐
炸膛坦客13 小时前
单片机/C/C++八股:(二十六)IIC 专题(I²C)---- 上集
c语言·c++·单片机
旖-旎13 小时前
LeetCode 518:零钱兑换||(完全背包)—— 题解
c++·算法·leetcode·动态规划·背包问题
灯澜忆梦13 小时前
GO_并发编程---定时器
开发语言·后端·golang
-银雾鸢尾-13 小时前
C#中的StringBuilder相关方法
开发语言·c#
Henry Zhu12314 小时前
C++中的特殊成员函数与智能指针
c++
-银雾鸢尾-14 小时前
C#中结构体与类的区别;抽象类与接口的区别
开发语言·c#
天天进步201514 小时前
UI-TARS 源码解析 #10:parse_action 源码解析:如何用 AST 安全解析模型生成的函数调用?
安全·ui
大模型码小白15 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
_wyt00116 小时前
多重背包问题详解
c++·背包dp
段一凡-华北理工大学17 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化