Windows 桌面悬浮窗工具,实时监控 DeepSeek API 账户余额与可用状态。托盘图标显示余额概览,悬浮窗支持贴边隐藏、拖拽移动、明暗主题。UI 遵循 Fluent 2 设计规范。
界面与设置交互有破坏性变化,升级后建议重新查看一遍设置项。
- 界面全面重建(Fluent 2) — 全套 UI 按微软 Fluent 2 规范重做:双层表面体系(底色 + 内容卡片)、1px contour 描边、顶层窗口 8px / 控件 4px 圆角、Segoe UI Variable 字体阶梯(Caption 12 / Body 14 / Subtitle 20),强调色改为 DeepSeek 品牌蓝
#4D6BFE(深色提亮#7C93FF)。图标改用 Fluent UI System Icons(MIT),以 SVG 嵌入 EXE、运行时矢量绘制并随主题着色。 - 设置窗「改动即生效」 — 移除窗口底部的「保存 / 取消」按钮。托盘常驻工具不应让用户为每次微调多确认一次:所有改动立即落盘并同步到悬浮窗、刷新定时器与开机自启;关窗(含 Esc)只表示离开,不再表示放弃。API Key 输入去抖 700ms 后自动刷新一次余额,避免逐字打字就打网络请求。
- API Key 卡片重构 — 「测试连接」从窗口底部移入该卡片、紧贴它所测试的输入框;卡片内部改为「12px 内边距 + 首行(标题 + 输入框 + 显隐按钮)+ 次行(测试连接 + 状态文字)+ 12px 内边距」的对称节奏,状态行合并 Key 格式校验与连接结果并按语义着色。
- 按钮与弹层按 Fluent 2 修正 — 标准按钮取消整圈描边,改为「浅填充 + 仅底部 1px 描边」,宽度由文字实测宽度 + 左右各 12px 推导;右键 / 托盘菜单重做为 8px 圆角 MenuFlyout,悬停为整行 4px 圆角胶囊;弹层文字垂直居中,全局图标与文字间距统一为 12px。
- 低余额阈值输入改为自绘 Fluent 数字框(支持按住连点),深色主题下不再露出系统控件的白色圆角块。
完整变更记录见 CHANGELOG.md。
- 实时余额查询 — 通过 DeepSeek
/user/balanceAPI 定期获取余额(默认每 1 分钟刷新,可调) - 桌面悬浮窗 — 紧凑卡片显示余额及状态指示点,拖拽移动,贴边自动隐藏
- Fluent 2 UI — 按微软官方规范实现:双层体系、4/8px 圆角、Segoe UI Variable 字体阶梯、DeepSeek 蓝强调色
- 位置记忆 — 拖动结束后立即保存悬浮窗位置,下次启动自动恢复
- 托盘图标 — 通知区图标直接显示余额概览,单击打开悬浮窗,右键提供 Fluent 风格菜单
- 多主题 — 明亮 / 黑暗 / 跟随系统三种模式,设置页即时预览
- 安全存储 — API Key 通过 Windows DPAPI(
DataProtectionScope.CurrentUser)加密保存在本地 - 开机自启 — 可选开机自动启动
- 轻量无依赖 — 单 EXE 文件,仅需 .NET Framework 4.x(Windows 自带)
| 明亮模式 | 黑暗模式 |
|---|---|
![]() |
![]() |
![]() |
![]() |
- 从 Releases 下载最新版
DeepSeekBalanceMonitor.exe - 双击运行,程序将在系统托盘显示图标
- 右键托盘图标 →「设置」
- 输入你的 DeepSeek API Key
- 关闭设置窗口,悬浮窗即显示余额
没有 API Key?前往 DeepSeek 开放平台 注册并创建。
需要 .NET Framework 4.x SDK(csc.exe,Windows 自带)。
.\build.ps1构建产物:DeepSeekBalanceMonitor.exe
$csc = "${env:WINDIR}\Microsoft.NET\Framework64\v4.0.30319\csc.exe"
# 图标资源参数(每个 SVG 一项)
$icons = Get-ChildItem "Icons\svg" -Filter *.svg | ForEach-Object { "/resource:Icons\svg\$($_.Name)" }
& $csc /nologo /target:winexe /optimize+ /win32icon:AppIcon.ico /out:DeepSeekBalanceMonitor.exe `
/r:System.dll /r:System.Core.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll `
/r:System.Web.Extensions.dll /r:System.Security.dll /r:System.Net.Http.dll `
$icons `
Core.cs NativeMethods.cs AssemblyVersion.cs FluentTheme.cs IconLoader.cs FluentControls.cs IconPainter.cs `
FloatingBalanceForm.cs SettingsForm.cs TrayAppContext.cs Program.cs配置文件位于:%AppData%\DeepSeekBalanceMonitor\settings.ini
| 配置项 | 说明 | 默认值 |
|---|---|---|
refresh_minutes |
余额刷新间隔(分钟) | 1 |
low_balance_threshold |
低余额提醒阈值(元),0 关闭 |
10 |
api_key |
DPAPI 加密存储的 API Key | 空 |
theme_mode |
主题模式:Light / Dark / System |
System |
auto_hide |
悬浮窗贴边自动隐藏 | true |
always_on_top |
悬浮窗置顶 | true |
auto_start |
开机自启 | false |
dock_side |
贴边方向:Left / Right / Top / Bottom |
自动 |
window_x / window_y |
悬浮窗位置 | 自动 |
- 语言 — C# 5+ (.NET Framework 4.x)
- UI — WinForms 全自绘,Fluent 2 设计令牌(
FluentTheme.cs) - 图标 — 运行时解析内嵌 SVG(
IconLoader.cs),Fluent UI System Icons(MIT) - HTTP —
HttpClient单例,超时 30 秒,自动重试一次 - 加密 —
System.Security.Cryptography.ProtectedData(DPAPI) - 构建 — 纯
csc.exe命令行编译,无 MSBuild / Visual Studio 依赖
DeepSeekBalanceMonitor/
├── Core.cs # DPI 缩放、模型、设置管理、DPAPI 加密、API 客户端
├── NativeMethods.cs # Win32 P/Invoke
├── FluentTheme.cs # Fluent 2 设计令牌(颜色/字体/圆角,明暗双主题)
├── IconLoader.cs # 内嵌 SVG 图标解析(path→GraphicsPath)与主题着色
├── FluentControls.cs # Fluent 控件:菜单渲染器、开关、下拉、按钮、输入面板
├── IconPainter.cs # 托盘图标自绘
├── FloatingBalanceForm.cs # 悬浮窗桌面窗体(贴边、拖拽、自绘布局)
├── SettingsForm.cs # 设置窗口(SettingsCard 式布局)
├── TrayAppContext.cs # 托盘上下文(菜单、刷新调度、开机自启)
├── Program.cs # 入口 + 全局 HTTP 配置
├── AssemblyVersion.cs # 程序集版本(1.5.3)
├── build.ps1 # 构建脚本(含 SVG 图标嵌入)
├── Icons/svg/ # Fluent UI System Icons SVG 源文件(编译时嵌入 EXE)
├── AppIcon.ico # 应用程序图标(编译进 EXE)
├── CHANGELOG.md # 变更日志
├── LICENSE # MIT 许可证
└── .gitignore
界面图标来自 Fluent UI System Icons(© Microsoft Corporation,MIT License),可免费商用。SVG 以源文件形式随仓库分发,构建时嵌入 EXE,运行时按主题着色绘制。
MIT License
本工具仅用于查询 DeepSeek API 余额,不会收集或上传任何个人信息。API Key 仅在你本地加密存储,用于直接调用 DeepSeek 官方接口。



