Fluent Clock Pro 是一款基于微软 Fluent Design 理念设计的数字桌面时钟。它不仅提供了高精度的时间显示,还集成了粒子烟花特效、窗口拖影动态效果以及高度自定义的磨砂玻璃(毛玻璃)视觉体验。
-
高级视觉引擎 (V VFX):
-
动态拖影:窗口移动时产生优雅的残影跟随效果。
-
粒子系统:鼠标移动时触发彩色烟花粒子,增加交互趣味性。
-
毛玻璃特效:支持自定义背景图片的深度模糊渲染。
-
高度自定义:
-
支持自定义字体(系统全字体库)、字号及颜色。
-
内置多种渲染模式:极简纯色、壁纸背景、毛玻璃特效。
-
支持透明度及模糊半径的实时调节。
-
功能实用性:
-
多时区支持:支持 Local、UTC、上海、纽约等时区切换。
-
窗口置顶:可选的“始终置顶”模式。
-
无边框交互:支持通过边缘拖拽调整窗口大小。
-
系统托盘:常驻托盘菜单,支持快速进入配置中心。
- 语言:Python 3.8+
- GUI 框架:PyQt6
- 时间处理:datetime, pytz
- 图形渲染:QPainter, QGraphicsBlurEffect, QLinearGradient
- 配置管理:JSON 序列化存储
.
├── main.py # 程序入口,负责资源初始化与异常捕获
├── clock_app.py # 核心逻辑:UI 渲染、粒子系统、设置对话框
├── config.py # 基于 qfluentwidgets 的高级配置管理类
├── clock.log # 运行日志(自动生成)
└── README.md # 项目说明文档
ClockApp: 继承自QWidget,实现了自定义的paintEvent来手动绘制拖影和背景特效。Particle: 烟花粒子物理模型,处理重力加速度与生命周期衰减。SettingsDialog: 提供交互式界面,支持 实时预览 更改效果。
确保已安装 Python 环境,然后运行以下命令安装必要的库:
pip install PyQt6 pytz qfluentwidgets
直接执行 main.py 启动应用:
python main.py
应用启动后,配置文件将自动创建在用户目录下:
- V7 特效版配置:
~/.fluent_clock_pro_v7.json - 通用设置:
~/.fluent_clock/config.json
右键操作指南:
- 右键点击时钟主体:打开配置中心或退出。
- 左键点击边缘:调整窗口大小。
- 左键点击中心:拖动窗口位置(带粒子特效)。
- 资源清理:项目通过
atexit注册了清理函数,确保在异常崩溃或退出时能够正确释放 QTimer 和线程资源。 - 性能优化:毛玻璃效果使用了图像缓存机制(
_cached_blur_pixmap),避免在paintEvent中进行高耗时的模糊计算。