sgcUI Fluent:一行代码,让每个控件拥有 Windows 11 外观

· 功能
sgcUI Fluent:一行代码,让每个控件拥有 Windows 11 外观 | eSeGeCe 博客
✦  sgcUI · Fluent 预设

Windows 11 外观。
只需一行代码。

Fluent 是适用于整个 sgcUI 套件的全新主题预设。表格、图表、仪表盘、看板、功能区、向导和编辑器都会切换为圆角、更柔和的边框、Segoe UI Variable 文本和 Windows 强调色,并支持浅色、深色和高对比度。

  • VCL
  • FireMonkey
  • C++ Builder
  • 浅色与深色
  • 高对比度
  • VCL Styles

↔  拖动滑块进行对比

sgcUI Theme Gallery—□✕
使用 Classic 预设的 sgcUI 控件
使用 Fluent 预设的相同 sgcUI 控件
ClassicFluent
1行代码
14个产品焕然一新
3浅色、深色、高对比度
0处现有应用改动

您的用户整天都生活在 Windows 11 中。它的圆角、低调的边框、分层的表面和强调色,已经成为现代桌面应用程序的标准外观。从 sgcUI 2026.11 开始,您的 Delphi 和 C++ Builder 应用程序无需改动任何一个窗体,就能拥有同样的外观。

全新的 Fluent 主题预设可一次性重塑每个 sgcUI 产品的外观。它是一套真正的设计系统,而不只是换个颜色:主题现在还会定义每种元素的圆角半径、描边宽度,以及悬停、按下、选中和禁用状态的颜色,每个产品都从当前激活的预设中读取这些设置。

60 秒了解 Fluent

从 Classic 到 Fluent,从浅色到深色,一分钟看遍整个套件。 也可在 YouTube 上观看.

一行代码切换整个套件

在启动时、主窗体显示之前调用一次,应用程序中的每个 sgcUI 控件都会以 Fluent 外观绘制。在运行时再次调用,每个可见控件会立即重绘。

uses
  sgcUICore_Theme;

// every sgcUI control of the application takes the Windows 11 look
sgcUISetApplicationThemePreset('Fluent');

Classic 仍是默认设置。在您主动启用之前,现有应用程序不会有任何变化,因此您可以今天就升级 sgcUI,在合适的时候再切换到 Fluent。

Fluent 带来了哪些变化

圆角编辑器边框、仪表板磁贴、看板卡片、表格标签、弹出窗口和各类栏条,都从预设中获取各自的圆角半径。
AaSegoe UI
Variable Text
Segoe UI VariableWindows 11 的字体,以可变字体渲染,并以 Segoe UI 和内置的 Roboto 作为备用字体。
您的 Windows 强调色按钮、选中项、滑块和焦点环都会跟随用户在 Windows 中选择的强调色。
深色标题栏VCL 和 FireMonkey 窗体在深色模式下会获得深色标题栏,并拥有 Windows 11 的圆角窗口。
常规悬停按下选中
Windows 11 状态悬停、按下、选中和禁用状态的颜色与 Windows 11 控件的细腻填充色保持一致。
更柔和的层次更轻的描边和分层的表面取代了生硬的边框,让卡片和面板轻盈地呈现在页面上。

近距离观察

差别就在细节之中。下面是上方截图中的看板,放大到两倍大小。拖动滑块,仔细看看列、卡片、标签和文字。

使用 Classic 预设的看板,已放大
使用 Fluent 预设的看板,已放大
ClassicFluent

浅色、深色与高对比度

Fluent 提供浅色和深色两种变体,高对比度则保留 Fluent 的形状,并采用 Windows 高对比度方案的颜色。您的应用程序可以实时跟随 Windows 的浅色或深色设置:当用户在 Windows 中切换时,每个 sgcUI 控件无需重启即可重绘。

sgcUI Theme Gallery—□✕
Fluent 预设,浅色
Fluent 预设,深色
Fluent 预设,高对比度
uses
  sgcUICore_Theme;

sgcUISetApplicationThemePreset('Fluent');
// follow the light / dark setting of Windows, live, and theme the forms too
sgcUISetApplicationThemeFollow(utfSystem, True);

// optional: your brand colour instead of the Windows accent
sgcUISetApplicationAccentColor($FFE2571E);

跟随系统功能默认关闭。Fluent 会采用 Windows 强调色,而应用程序设置的强调色始终优先。

真正的 Windows 11 窗口

控件只是整体效果的一半。当 Fluent 或系统跟随处于激活状态时,sgcUIApplyThemeToForm 还会让 VCL 和 FireMonkey 窗体在深色模式下拥有深色标题栏,并采用 Windows 11 的圆角窗口。您也可以直接设置任意窗体的边框。

uses
  sgcUICore_Theme, sgcUICore_Theme_VCL;

// dark title bar and Windows 11 rounded corners for this form
sgcUIApplyWindowFrameVCL(Self, utDefault);

FireMonkey 窗体请使用 sgcUICore_Theme_FMX 中的 sgcUIApplyWindowFrameFMX。

sgcUI Theme Gallery—□✕
导航栏、功能区、向导和数据透视表,Classic 深色
导航栏、功能区、向导和数据透视表,Fluent 深色
ClassicFluent

每个产品,统一外观

14 个 sgcUI 产品中的每一个,都从预设中获取圆角半径、边框宽度和状态颜色,因此 Fluent 外观覆盖整个套件:导航栏和功能区、向导步骤条、数据透视表及其字段列表、日程表和甘特图。PDF 查看器通过新增的 UseUITheme 属性加入其中,地图则通过新增的 Theme 属性加入,因此缩放按钮、指南针、比例尺和弹出窗口同样跟随主题。

已经在使用 VCL 样式?

请继续使用。借助新的宿主跟随功能,sgcUI 控件会从当前激活的 VCL 样式中获取颜色(Delphi XE2 及更高版本),而形状仍由 Fluent 提供。在运行时更改样式,sgcUI 控件也会随之变化。

uses
  Vcl.Themes, sgcUICore_Theme, sgcUICore_Theme_VCL;

TStyleManager.TrySetStyle('Amakrits');
sgcUISetApplicationThemePreset('Fluent');
// colours from the active VCL style, shapes from Fluent
sgcUISetApplicationThemeFollow(utfHost, True);

打造专属风格

Fluent 和 Classic 只是两个预设,并非仅有的两个。您可以从 Fluent 的定义出发,修改品牌所需的内容,并以自己的名称注册。每个产品都会以同样的方式采用它。

uses
  sgcUICore_Theme;

var
  vLight, vDark: TsgcUIThemeDef;
begin
  // start from Fluent and make the cards and tiles rounder
  vLight := sgcUIFluentThemeDef(False);
  vDark := sgcUIFluentThemeDef(True);
  vLight.RadiusMedium := 12;
  vDark.RadiusMedium := 12;
  vLight.RadiusLarge := 16;
  vDark.RadiusLarge := 16;
  sgcUIRegisterThemePreset('Rounded', vLight, vDark);
  sgcUISetApplicationThemePreset('Rounded');
end;

应用程序字体同样优先于预设:使用 sgcUISetDefaultFontName 或 sgcUISetDefaultFontFiles 设置您自己的字体,Fluent 会保留其余所有内容。

全新的 Theme Gallery 演示程序适用于 VCL、FireMonkey 和 C++ Builder,在概览、文档、地图和控件页面上,将 Classic 与 Fluent 在浅色、深色和高对比度下并排展示。它提供宿主跟随选项和 VCL 样式选择器,还可以保存每种组合的截图。本文中的所有截图都是用它拍摄的。

让您的应用程序拥有 Windows 11 外观

Fluent 随 sgcUI 2026.11 一同推出,适用于 Delphi 和 C++ Builder,支持 VCL 和 FireMonkey。

有问题或反馈?请联系我们,您将得到编写这些代码的人的亲自答复。