作业管理器
github.com/ZXCLF/Homework_Manager
作业管理器是一个基于 Python 与 PySide6 开发的图形化应用程序,用于管理各科作业进度。通过直观的树状结构和进度条展示,帮助用户了解各项任务的完成情况,支持权重设置和加权进度计算。
快速开始
安装依赖
1 | pip install PySide6 |
运行程序
1 | python Homework_Manager.py |
文件结构
1 | ├── homework.json # 作业配置文件(必需) |
配置文件教程
一、结构概述
配置文件 homework.json 采用 JSON 格式:
1 | { |
- 科目:顶层分类,如”语文”、”数学”、”英语”等
- 任务:具体的作业项目,包含”名称”和”权重”
- 权重:表示任务的重要性,用于加权计算总进度
- 假期:假期进度条配置(可选功能)
二、假期配置
2.1 启用假期进度条
1 | "假期": { |
2.2 配置说明
- 启用:设置为
true启用假期进度条功能 - 开始日期:假期开始日期,格式为
YYYY-MM-DD(包含在假期内,从当天00:00开始) - 结束日期:假期结束日期,格式为
YYYY-MM-DD(包含在假期内,到当天23:59结束)
2.3 注意事项
- 如果未配置假期部分,假期进度条将不显示
- 如果配置错误(如日期格式错误、开始日期晚于结束日期),假期进度条将被禁用
- 假期进度条会实时显示剩余时间(天、小时、分钟)
三、科目配置详解
3.1 添加新科目
在”作业”对象中添加新的科目键值:
1 | { |
3.2 支持的所有预设科目
程序预设支持以下科目:
- 语文、数学、英语、物理、化学
- 道德与法治、历史、地理、生物
- 其他
注意:你也可以添加预设之外的科目,如”体育”、”美术”等。
四、任务配置
4.1 格式
1 | { |
4.2 权重设置
取值范围:建议 0.1-10.0
默认值:如果不指定,默认为 1.0
示例:
1
2{ "名称": "简单任务", "权重": 0.5 }
{ "名称": "重要任务", "权重": 3.0 }
五、嵌套结构
5.1 多级分类
1 | "语文": { |
5.2 说明性字段
以下字段会自动识别为说明文字,不作为任务:
- “要求”、”范围”、”数量”、”主题”、”说明”、”备注”
示例:
1 | { |
六、示例
1 | { |
功能特性
1. 假期进度显示
- 实时显示假期进度百分比
- 精确到分钟的剩余时间显示
- 自动计算假期开始前、进行中、结束后的不同状态
2. 作业进度管理
- 树状结构展示作业分类
- 支持权重设置的加权进度计算
- 双击任务可快速设置进度(0%、25%、50%、75%、100%)
- 进度自动保存和加载
3. 科目进度概览
- 各科目独立进度条显示
- 显示科目权重和完成百分比
- 支持多列布局,适应不同屏幕
使用说明
- 配置作业:编辑
homework.json文件,按照上述格式配置作业任务 - 配置假期:如需假期进度功能,在配置文件中添加”假期”部分
- 运行程序:运行主程序文件
- 设置进度:双击任务项设置完成进度
- 保存进度:进度会自动保存到
homework_progress.json
许可证
本项目采用 GPL 许可证。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 ZXCLF!
评论
