写在前面:关于为什么要写一套新的UI框架
一方面,Qt Qml
生态中缺乏一套既遵循现代设计规范(自带的功能少且丑,懂得都懂),又能深度整合 Qt 生态的开源组件库。
另一方面,Qt Qml
中也有一些其他方案,例如 FluentUI Qml
,然鹅这个库老版直接不维护( 新版不开源且 Qt6.8+
官方已经实现 WinUI3
风格组件 )。
因此,我决定自己写一套,但需要遵循一套现代UI设计规范,然后个人比较喜欢 Ant-d
的样式和风格,也是大厂(阿里)出品,值得信赖。
最后,DelegateUI 应运而生,它不仅填补了这一空白,更通过极简的接入方式、强大的主题系统和跨平台一致性,为开发者提供了一套开箱即用的解决方案,并且完全开源免费。
项目地址:
-
🛠️ GitHub仓库 | 🎯 Gitee镜像 | 📖 快速入门
-
💬 欢迎大家加入
QQ群(490328047)
/Wx群(添加MenPenS0612)
反馈和提交BUG!
📚 组件清单
DelegateUI
基本实现了 Ant-d
的核心样式和交互范式,目前提供以下组件:
通用组件
组件名 | 组件描述 | 文章 |
---|---|---|
DelWindow | 跨平台无边框窗口的最佳实现,基于 QWindowKit。 | 文章 |
DelButton | 按钮(支持多种类型)。 | 文章 |
DelIconButton | 图标按钮。 | 文章 |
DelCaptionButton | 标题栏按钮。 | 文章 |
DelIconText | 图标文本(集成 Ant-d 图标体系)。 | 文章 |
DelCopyableText | 可复制文本。 | 文章 |
DelRectangle | 矩形(可设置任意圆角)。 | 文章 |
布局组件
组件名 | 组件描述 | 文章 |
---|---|---|
DelDivider | 分割线(支持水平/垂直方向)。 | 文章 |
导航组件
组件名 | 组件描述 | 文章 |
---|---|---|
DelMenu | 菜单(多级折叠支持,可无限嵌套)。 | 文章 |
DelScrollBar | 滚动条(支持垂直/水平方向)。 | 文章 |
数据录入
组件名 | 组件描述 | 文章 |
---|---|---|
DelSwitch | 开关(支持多种类型)。 | 文章 |
DelSlider | 滑动输入条(支持多种类型)。 | 文章 |
DelSelect | 选择器。 | 文章 |
DelInput | 输入框。 | 文章 |
DelOTPInput | 一次性口令输入框(用于密码/验证码/激活码)。 | 文章 |
DelRate | 星级评分(支持多种类型)。 | 文章 |
DelRadio | 单选框(支持多种类型)。 | 文章 |
DelRadioBlock | 单选块。 | 文章 |
DelCheckBox | 多选框。 | 文章 |
DelTimePicker | 时间选择框。 | 文章 |
数据展示
组件名 | 组件描述 | 文档 |
---|---|---|
DelAvatar | 头像。 | DelAvatar说明 |
DelToolTip | 文字提示。 | 文章 |
DelTourFocus | 漫游焦点。 | 文章 |
DelTourStep | 漫游式引导。 | 文章 |
DelTabView | 标签视图。 | 文章 |
DelCollapse | 折叠面板。 | 文章 |
DelCard | 卡片。 | 文章 |
效果组件
组件名 | 组件描述 | 文章 |
---|---|---|
DelAcrylic | 亚克力效果。 | 文章 |
工具组件
组件名 | 组件描述 | 文章 |
---|---|---|
DelAsyncHasher | 异步哈希器。 | 文章 |
反馈组件
组件名 | 组件描述 | 文章 |
---|---|---|
DelWatermark | 水印工具。 | 文章 |
DelDrawer | 抽屉。 | 文章 |
🔄 组件持续更新中,完整列表请参考 Ant Design 组件文档,欢迎提交 Issue 优先级开发!
核心亮点:DelegateUI 的独特之处
-
📦 开箱即用的整套 Ant-d 风格组件
-
基于
Ant-d
的交互与视觉规范,提供按钮、表单、弹窗等高频组件,无需从零设计。 -
示例:目前已经实现 30+ 组件(持续添加中),可直接复用,快速构建企业级应用界面。
-
基于代理的扩展(熟悉
qml delegate
的应该不陌生),极大提升了组件定制的灵活性。
-
-
🎨 主题定制: 参考
Ant-d
源码,实现了一套强大的主题系统-
动态主题模式切换(
Light/Dark模式
)。 -
动态色彩生成,基于 Ant-d 色彩算法,保证最佳视觉效果。
-
动态字体切换,基于 Ant-d 字体算法,保证最佳视觉效果。
-
组件级主题定制,可自由定制内部任何组件主题。
-
企业可轻松适配品牌视觉,开发者无需深入 Qml 样式细节。
-
-
💻 跨平台:一次开发,多端运行
-
基于 Qml 的跨平台能力,支持
Windows/Linux/Mac
等主流系统,未来计划扩展至移动端。 -
构建流程标准化(
CMake + Qt6
),避免平台差异导致的兼容性问题。
-
-
🚀 极简集成:作为 Qml 插件集成,5分钟快速上手
-
通过清晰的
CMake
指令与代码示例,开发者可快速将DelegateUI
整合到现有项目中。 -
提供完整的文档(通过
Grallery
)与社区支持(Github/QQ/WX群
),降低学习门槛。
-
目标用户:哪些需要关注这个库
-
C++/Qt/Python开发者:希望提升界面美感和开发效率,避免重复造轮子。
-
UI设计师:快速设计出符合设计规范的界面,减少设计时间。
-
技术决策者:寻找稳定、可定制、开源的UI框架以降低长期维护成本。
结语:加入现代UI开发的新范式
DelegateUI
不仅是一个组件库,更是一种对高效开发的追求。
无论你是想开发更现代的产品,还是希望探索 Qml 的更多可能性,亦或是对源码感兴趣,都可以持续关注这个项目。