Fluent-Qt

无需重写 QML,升级现有 Qt Widgets 应用

原生 C++17 控件,可继续使用现有的 signals、slots、布局和工程结构。

C++17 Qt 5.15+ / 6.2+ MIT

在线 Gallery 在浏览器中运行,无需在本机配置 Qt;接入项目仍需 Qt 5.15+ 或 6.2+ 开发环境。

Python / PySide6 Python 项目可通过 PySide6 使用同一套控件 pip install FluentQt Gallery
Fluent-Qt Gallery 首页,完整展示控件分类和示例
Gallery 实际界面
UI 运行时
Qt Widgets
Qt 支持
5.15+ / 6.2+
工具链
CMake + C++17
运行平台
Windows / macOS / Linux / Web

03 / GUI SKILL

构建桌面 GUI

  • 工程C++ / PySide6 项目结构
  • 界面Fluent 组件、主题与配色
  • 检查Light / Dark、窄窗口与交互
参考实现 DeepSeek Desktop
C++ · FluentQt
使用 build-fluentqt-gui 构建的 DeepSeek Desktop 原生桌面参考界面

任务分组、运行时间线、输入与 Light / Dark 主题。

FluentQt 独立实现,非 DeepSeek 官方应用。

上游项目

04 / POSITIONING

独立控件 不止主题皮肤

每个控件都有独立的 C++ API、状态与布局行为

  1. 01

    Qt Widgets 原生用法

    沿用 signals、slots、layout 与事件循环

  2. 02

    Qt 5 / Qt 6 共用接口

    应用侧无需为 Qt 主版本维护两套调用

  3. 03

    清晰的公共边界

    业务代码只依赖统一入口头文件与 FluentQt::FluentQt

05 / COMPONENTS

控件按用途分类

以下为 Gallery 中的部分控件

Fluent-Qt Gallery 中完整的 Button 控件页面
01

BASIC INPUT

Button

包含默认、强调、禁用和图标状态

SplitButtonComboBoxCheckBox
Fluent-Qt Gallery 中的集合视图页面
02 / COLLECTIONSListView · GridView · TreeView
Fluent-Qt Gallery 的导航与窗口界面
03 / SHELLNavigation · Windowing
11 个控件家族

基础输入 · 集合视图 · 日期与时间 · 对话框 · 布局 · 菜单 · 导航 · 滚动 · 状态信息 · 文本输入 · 窗口系统

FoundationTheme · Typography · FontIcon
Basic inputButton · ComboBox · ToggleSwitch
CollectionsListView · GridView · TreeView
Date & timeCalendarView · DatePicker · TimePicker
Dialogs & flyoutsContentDialog · Flyout · TeachingTip
LayoutCard · Accordion · Expander
Menus & toolbarsMenu · MenuBar · CommandBar
NavigationNavigationView · TabView · Breadcrumb
ScrollingScrollView · PipsPager · AnnotatedScrollBar
Status & infoInfoBar · ProgressRing · Toast
Text fieldsLineEdit · PasswordBox · AutoSuggestBox
WindowingWindow · TitleBar · WindowBackdrop

06 / QUICK START

快速接入

复制 CMake 片段即可接入现有工程;也支持 add_subdirectory 与 find_package。

  • 保留现有 Widgets 工程与事件循环
  • 库目标只依赖 Qt Widgets
  • Qt 5 / Qt 6 使用同一应用层接口
CMakeLists.txt
# Add Fluent-Qt to your existing project
include(FetchContent)

FetchContent_Declare(
  fluentqt
  GIT_REPOSITORY https://github.com/calvinhxx/Fluent-Qt.git
  GIT_TAG v1.7.1
  GIT_SHALLOW TRUE
)
FetchContent_MakeAvailable(fluentqt)

target_link_libraries(
  my_app PRIVATE FluentQt::FluentQt
)

07 / DOWNLOAD

下载 Gallery

桌面安装包用于离线体验;应用接入仍使用 CMake 或 PyPI。