QFluentKit:让 Qt 桌面应用拥有 Fluent Design 风格
你还在用 Qt 默认的按钮和输入框吗?Qt 的原生控件功能没问题,但样式确实让人回到 Windows 7 时代。QFluentKit 是一个开源的 Fluent Design Qt 组件库,让桌面应用 UI 现代化。
为什么需要 QFluentKit
Qt 的原生控件功能上无可挑剔,但样式确实停留在上个时代。QSS 理论上能解决样式问题,但实际开发中调试成本高、跨平台表现不一致、动画支持有限。
QFluentKit 提供了另一种思路:一套开箱即用的 Fluent Design 风格组件,同时保持 Qt 的跨平台能力和原生性能。


核心亮点
- 248+ 内置 SVG 图标:覆盖 FluentIcon 全集,开箱即用
- 亮色/暗色主题:支持 AUTO/LIGHT/DARK 三种模式,跟随系统或手动切换
- 动画系统:内置动画基类,交互体验流畅
- 路由系统:配合 StackedWidget 实现页面切换
- Fluent Design 风格:圆角、毛玻璃、亚克力材质效果

组件一览
QFluentKit 提供了完整的组件分类:
| 分类 | 包含组件 |
|---|---|
| BasicInput | 按钮、输入框、复选框、单选框、滑块、开关等 |
| Display | 标签、进度条、信息条、徽章等 |
| DateTime | 日期选择器、时间选择器 |
| Menu | 菜单、右键菜单 |
| Dialog | 对话框、消息框 |
| Layout | 布局容器、流式布局 |
| Progress | 进度条、进度环 |
| Setting | 设置卡片、设置项 |
| Material | 材质效果(亚克力、云母等) |
快速上手
环境要求
- Qt 5.12+ 或 Qt 6.x
- C++17 标准
- CMake 3.15+
- 编译器:MinGW 8.0+/MSVC 2017+(Windows)、GCC 7+/Clang 5+(Linux)、Clang/Xcode 10+(macOS)
集成方式
提供了四种集成方案:
- 安装到 Qt 目录(推荐):安装后只需
find_package(QFluent REQUIRED)+target_link_libraries,最简洁 - 安装到自定义目录:适合项目级别的依赖管理
- 子目录集成:
add_subdirectory(QFluentKit),适合作为项目子模块 - 手动集成:最灵活,但也最繁琐
基本用法
#include <QWidget>
#include <QApplication>
#include "QFluent/LineEdit.h"
#include "QFluent/PushButton.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建 Fluent 窗口
QWidget window;
window.setWindowTitle("QFluentKit 示例");
window.resize(800, 600);
// 创建按钮
auto *button = new PrimaryPushButton(&window);
button->setText("点击我");
button->move(350, 280);
// 创建输入框
auto *lineEdit = new LineEdit(&window);
lineEdit->setPlaceholderText("请输入内容...");
lineEdit->move(350, 340);
window.show();
return app.exec();
}
项目结构

页面效果
QFluentKit 自带 15 个演示界面,涵盖了所有组件的使用方式,包括登录窗口、导航栏窗口、分栏窗口等常见场景。
官方地址
GitHub:https://github.com/toddming/QFluentKit
本文转发自微信公众号「晓懂聊科技」,原文链接。
加载评论中...