xiaji 9879dee0de refactor: 重构倒计时应用程序代码结构
简化代码结构,移除冗余功能,优化状态管理逻辑
更新UI交互方式,修改微缩状态下的操作方式为双击
添加音频播放功能,使用QSoundEffect替代QMediaPlayer
优化配置对话框实现,简化设置项保存逻辑
2026-01-21 21:55:34 +08:00
2026-01-21 18:21:56 +08:00
2026-01-21 18:21:56 +08:00

述职计时器

一个使用 PySide6 构建的倒计时应用程序,美观大方,支持多种倒计时模式。

功能特点

界面状态

程序有两种界面状态:

1. 正常状态

  • 显示倒计时时间和完整的按钮区域
  • 可以通过拖动窗口的任何位置来移动窗口
  • 显示按钮区域
  • 窗口大小500×300像素

2. 微缩状态

  • 点击"5分钟"或"6分钟"按钮开始倒计时后延迟2秒自动切换到微缩状态
  • 只显示倒计时时间
  • 窗口大小200×80像素
  • 位置距离屏幕上边缘50像素距离右边缘200像素
  • 双击界面后暂停倒计时,并切换回正常状态

快捷按钮

  • 5分钟开始5分钟倒计时
  • 6分钟开始6分钟倒计时
  • 其它:打开配置对话框

配置功能

点击"其它"按钮可以打开配置对话框:

  • 自定义倒计时:设置自定义倒计时时间(秒)
  • 提前告警设置倒计时结束前多少秒播放告警提示音默认30秒
  • 窗口置顶:设置窗口是否置顶
  • 窗口透明度设置窗口透明度10%-100%
  • 测试告警:测试告警提示音
  • 退出:退出程序(唯一退出方式)

告警功能

  • 倒计时结束前设置的秒数时播放告警提示音
  • 循环播放3次
  • 倒计时结束时显示"时间已到"文字,带有跳动和闪动效果

使用说明

  1. 运行程序后,默认显示正常状态
  2. 点击"5分钟"或"6分钟"按钮开始倒计时
  3. 2秒后自动切换到微缩状态只显示时间
  4. 在微缩状态下双击可以暂停并回到正常状态
  5. 需要退出程序时,点击"其它"→"退出"

技术栈

  • Python 3.11
  • PySide6 (Qt 6)
  • PyInstaller打包

打包命令

python -m PyInstaller --onefile --windowed --icon=Timer.ico --name=述职计时器 countdown.py

文件说明

  • countdown.py - 主程序代码
  • Timer.ico - 程序图标
  • 要求.txt - 功能需求文档
  • clean.py - 清理打包残留文件
  • SKILL.md - 打包技巧说明
Description
倒计时,用于述职的时候使用。
Readme 103 MiB
Languages
Python 100%