下班倒计时工具
这是一个简单实用的下班倒计时工具,使用 Python 的 tkinter 和 customtkinter 库开发。
功能特点
- 可拖动的半透明窗口
- 自定义下班时间设置
- 实时倒计时显示
- 自动保存设置
- 无边框设计,美观简洁
安装依赖
在运行程序之前,需要安装以下依赖: bash pip install customtkinter cx_Freeze -i mirrors.aliyun.com/pypi/simple…
文件结构
countdown_timer.py: 主程序文件build.py: 打包脚本timer_settings.json: 配置文件(程序运行时自动生成)
使用说明
-
设置下班时间:
- 使用时间选择器设置小时(0-23)和分钟(0-59)
- 点击"保存时间"按钮保存设置
-
窗口操作:
- 鼠标左键按住窗口可以拖动到任意位置
- 窗口透明度为80%,不影响其他工作
-
倒计时显示:
- 实时显示距离下班还有多长时间
- 如果当前时间已过设定的下班时间,会自动计算到第二天
打包说明
要将程序打包成可执行文件,请按以下步骤操作:
- 确保所有文件在同一目录下
- 运行打包命令: bash python build.py build
- 在生成的
build目录中找到可执行文件
技术实现
-
GUI 实现:
- 使用 tkinter 作为基础 GUI 框架
- 使用 customtkinter 美化界面
- 实现无边框和半透明效果
-
时间处理:
- 使用 datetime 模块处理时间计算
- 自动处理跨天倒计时
-
配置保存:
- 使用 JSON 格式保存用户设置
- 程序启动时自动加载上次的设置
代码结构
主要类 CountdownTimer 包含以下方法:
__init__: 初始化窗口和组件start_move: 开始拖动窗口on_move: 处理窗口拖动load_settings: 加载配置save_settings: 保存配置update_countdown: 更新倒计时显示run: 运行程序
可能的改进方向
- 添加系统托盘功能
- 增加主题切换
- 添加提醒功能
- 支持多个时间点设置
- 添加快捷键支持
注意事项
- 程序需要写入权限来保存配置文件
- 默认下班时间设置为 18:00
- 窗口透明度可在代码中调整(修改
-alpha值)