「 HuskarUI 」 基于 Qml 的现代 UI

September 24, 2025 · View on GitHub

「 HuskarUI 」 基于 Qml 的现代 UI

Qt Qml 的 Ant 设计组件库

此项目为「 HuskarUI 」Qt5 实现

Qt6 实现更加强大性能也更好 HuskarUI for Qt6

win-badge linux-badge macos-badge android-badge

Issues Issues Release

QQGroup

English | 中文

说明

提供一些有用 Qml 控件 & 实用工具

一些是 Qt C++实现, 也有 纯Qml实现

如何使用

对于 CustomControls 模块

  • 使用 cmake 构建

CustomControls/CMakeLists.txt 可构建所有示例

如需单独构建,直接进入目录构建 CustomControls/*/CMakeLists.txt

  • 使用 qmake 构建

CustomControls/Run.pro 可构建所有示例

如需单独构建,直接进入目录构建 CustomControls/*.pro

对于 HuskarUI_Qt5 模块

请参照 HuskarUI Qt6 构建

🗺️ 路线图

开发计划可以在这里看到: 组件路线图.

任何人都可以通过 issue/qq群/wx群 进行讨论, 最终有意义的组件/功能将添加到开发计划.

所有控件&工具预览

预览图均为GIF,较大

控件&工具列表 (部分动态预览图被替换为静态)

名称说明支持示例
GlowCircularImage圆形图像/发光图像Qt5
MagicFish灵动的小鱼Qt5
EditorImageHelper编辑器图像助手(支持动图)Qt5
FramelessWindow无边框窗口Qt5
PolygonWindow多边形窗口Qt5
HistoryEditor历史编辑器 ( 支持历史搜索 & 关键字匹配 )Qt5
VideoOutputQml中支持原始视频图像格式(YUV / RGB)Qt5
FpsItemQml中显示帧率的组件Qt5
ColorPicker / ColorPickerPopup仿 Windows10 画图3D 的颜色选择器, 但更加强大Qt5
WaterfallFlow瀑布流视图(并且可以自适应),类似小红书Qt5
Notification悬浮出现在(全局/局部)页面上的通知提醒消息Qt5
WaveProgress动态的水波进度条Qt5

以下控件来自 HuskarUI

名称说明支持示例
HusMoveMouseArea / HusResizeMouseArea给任意目标添加[移动/调整大小操作]的鼠标区域Qt5 Qt6
HusAsyncHasher可对任意数据(url/text/object)生成加密哈希的异步散列器Qt5 Qt6
HusRate对某个事物进行评级Qt5 Qt6
HusSystemThemeHelper(Qt5/Qt6) 系统主题助手 [Dark/Light]主题检测 & 感知Qt5 Qt6
HusWatermark可给页面的任意项加上水印Qt5 Qt6
HusTour(HusTourFocus/HusTourStep)用于分步引导用户了解产品功能的气泡组件。Qt5 Qt6
HusButton(HusButton/HusIconButton)按钮用于开始一个即时操作。Qt5 Qt6
HusDivider用于区隔内容的分割线。Qt5 Qt6
HusSwitch使用开关在两种状态之间切换。Qt5 Qt6
HusAcrylic亚克力/毛玻璃效果。Qt5 Qt6
HusRectangle任意角都可以是圆角的矩形。Qt5 Qt6
HusTabView通过选项卡标签切换内容的组件。Qt5 Qt6
HusRadio用于在多个备选项中选中单个状态。Qt5 Qt6
HusRadioBlockHusRadio 变体,用于在多个备选项中选中单个状态。Qt5 Qt6
HusCheckBox收集用户的多项选择。Qt5 Qt6
HusInput通过鼠标或键盘输入内容,是最基础的表单域的包装(即传统输入框)。Qt5 Qt6
HusOTPInput用于接收和验证一次性口令的输入框组合,通常用于验证码或密码。Qt5 Qt6
HusSlider滑动型输入器,展示当前值和可选范围。Qt5 Qt6
HusScrollBar滚动条是一个交互式栏,用于滚动某个区域或视图到特定位置。Qt5 Qt6
HusDrawer屏幕边缘滑出的浮层面板。Qt5 Qt6
HusCollapse可以折叠/展开的内容区域。Qt5 Qt6
HusAvatar用来代表用户或事物,支持图片、图标或字符展示。Qt5 Qt6
HusCard基础的卡片容器,可承载文字、列表、图片、段落,常用于后台概览页面。Qt5 Qt6
HusToolTip简单的文字提示气泡框(替代基础ToolTip)。Qt5 Qt6
HusPopup自带跟随主题切换的背景和阴影(替代基础Popup)。Qt5 Qt6
HusSelect下拉选择器(替代基础ComboBox)。Qt5 Qt6
HusPagination分页器,用于分隔长列表,每次只加载一个页面。Qt5 Qt6
HusTimeline时间轴,可垂直展示的时间流信息。Qt5 Qt6
HusTag标签,进行标记和分类的小标签。Qt5 Qt6
HusTableView表格,用于展示行列数据。Qt5 Qt6
HusAutoComplete提供输入框自动完成功能。Qt5 Qt6
HusDateTimePicker日期事件选择框,输入或选择日期/时间的控件。Qt5 Qt6
HusMultiSelect多选器,用于在多个备选项中选中多个状态。Qt5 Qt6
HusNotification通知提醒框,全局/页面内展示通知提醒信息。Qt5 Qt6
HusPopconfirm气泡确认框,点击元素,弹出气泡式的确认框。Qt5 Qt6

许可证

使用 MIT LICENSE

开发环境

windows 11,Qt 5.15.2 / Qt 6.7.3

Star 历史

Star History Chart