# 时间管理大师
**Repository Path**: wx114/TimerManagerProject
## Basic Information
- **Project Name**: 时间管理大师
- **Description**: No description available
- **Primary Language**: Python
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-05-20
- **Last Updated**: 2026-05-28
## Categories & Tags
**Categories**: Uncategorized
**Tags**: tkinter, GUI, Python
## README
# 时间管理大师 (Time Master)
一款基于 Tkinter 的桌面时间管理应用,结合刻意练习理念,帮助用户通过倒计时任务追踪练习进度、提升技能等级。
## 界面预览
## 功能特性
- **倒计时任务** — 创建自定义时长的练习任务,支持暂停、恢复、删除
- **周期循环** — 任务完成后可自动重新开始下一轮计时
- **技能追踪** — 创建技能并关联任务,自动累计练习时长
- **等级系统** — 9 级进阶体系(入门者 → 超越者),实时显示等级和进度
- **连续天数** — 记录每日练习的连续打卡天数
- **系统托盘** — 最小化到托盘运行,右键查看任务状态
- **完成通知** — 任务倒计时结束时弹出桌面通知并播放提示音
- **数据持久化** — 所有任务和技能数据自动保存到本地 JSON 文件
## 项目结构
```
TimerManagerProject/
├── main.py # 应用入口,协调各子系统
├── tray.py # 系统托盘图标和菜单
├── core/
│ ├── task.py # 任务模型(倒计时、暂停、周期)
│ ├── skill.py # 技能模型(等级、连续天数)
│ ├── storage.py # JSON 数据持久化
│ └── timer.py # 定时器管理器(每秒驱动)
├── ui/
│ ├── main_window.py # 主窗口(工具栏、任务列表、操作栏)
│ ├── skill_panel.py # 左侧技能面板(卡片列表)
│ ├── task_dialog.py # 任务创建/编辑对话框
│ ├── skill_dialog.py # 技能创建/编辑对话框
│ ├── notification.py # 任务完成通知窗口(淡入动画)
│ ├── dialog_utils.py # 对话框通用工具函数
│ └── theme.py # 全局主题(颜色、字体、样式)
└── data/
├── tasks.json # 任务数据
├── sessions.json # 会话数据
└── skills.json # 技能数据
```
## 环境要求
- Python >= 3.13
- Windows(系统托盘功能依赖 Windows API)
## 安装与运行
```bash
# 克隆项目
git clone
cd TimerManagerProject
# 安装依赖
pip install pillow pystray
# 运行应用
python main.py
```
或使用 uv 管理依赖:
```bash
uv sync
uv run main.py
```
## 使用说明
1. **添加技能** — 点击左侧面板底部的"添加技能"按钮,设置名称、图标和目标小时数
2. **创建任务** — 点击右上角"新建练习",填写任务名称、倒计时时间和练习目标,可选关联技能
3. **管理任务** — 选中任务后可暂停/恢复、编辑或删除
4. **编辑技能** — 单击技能卡片或右键选择"编辑"修改技能信息
5. **系统托盘** — 关闭窗口后应用在托盘继续运行,右键可查看任务状态或退出
## 技术栈
| 组件 | 技术 |
|------|------|
| GUI 框架 | Tkinter + ttk |
| 图标生成 | Pillow (PIL) |
| 系统托盘 | pystray |
| 数据存储 | JSON 文件 |
| 定时器 | tkinter.after (1000ms) |
## 许可证
[Apache License 2.0](LICENSE)