python实现的下班倒计时小工具

117 阅读2分钟

下班倒计时工具

这是一个简单实用的下班倒计时工具,使用 Python 的 tkinter 和 customtkinter 库开发。

功能特点

  1. 可拖动的半透明窗口
  2. 自定义下班时间设置
  3. 实时倒计时显示
  4. 自动保存设置
  5. 无边框设计,美观简洁

安装依赖

在运行程序之前,需要安装以下依赖: bash pip install customtkinter cx_Freeze -i mirrors.aliyun.com/pypi/simple…

文件结构

  • countdown_timer.py: 主程序文件
  • build.py: 打包脚本
  • timer_settings.json: 配置文件(程序运行时自动生成)

使用说明

  1. 设置下班时间:

    • 使用时间选择器设置小时(0-23)和分钟(0-59)
    • 点击"保存时间"按钮保存设置
  2. 窗口操作:

    • 鼠标左键按住窗口可以拖动到任意位置
    • 窗口透明度为80%,不影响其他工作
  3. 倒计时显示:

    • 实时显示距离下班还有多长时间
    • 如果当前时间已过设定的下班时间,会自动计算到第二天

打包说明

要将程序打包成可执行文件,请按以下步骤操作:

  1. 确保所有文件在同一目录下
  2. 运行打包命令: bash python build.py build
  3. 在生成的 build 目录中找到可执行文件

技术实现

  1. GUI 实现:

    • 使用 tkinter 作为基础 GUI 框架
    • 使用 customtkinter 美化界面
    • 实现无边框和半透明效果
  2. 时间处理:

    • 使用 datetime 模块处理时间计算
    • 自动处理跨天倒计时
  3. 配置保存:

    • 使用 JSON 格式保存用户设置
    • 程序启动时自动加载上次的设置

代码结构

主要类 CountdownTimer 包含以下方法:

  • __init__: 初始化窗口和组件
  • start_move: 开始拖动窗口
  • on_move: 处理窗口拖动
  • load_settings: 加载配置
  • save_settings: 保存配置
  • update_countdown: 更新倒计时显示
  • run: 运行程序

可能的改进方向

  1. 添加系统托盘功能
  2. 增加主题切换
  3. 添加提醒功能
  4. 支持多个时间点设置
  5. 添加快捷键支持

注意事项

  1. 程序需要写入权限来保存配置文件
  2. 默认下班时间设置为 18:00
  3. 窗口透明度可在代码中调整(修改 -alpha 值)

1.png