使用python中的tkinter模块制作一个学习打卡小软件

戈多Sensei是一款基于Python tkinter开发的学习任务管理软件,支持任务制定、完成及学习评估。通过可视化界面,用户可自定义学习内容、时间,评估学习效率。软件计算每日学习得分,记录学习时间,绘制周月趋势图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习任务打卡小软件---戈多Sensei

最近为了给我的星星⭐写一个学习记录软件,学习了一下python中的tkinter模块,做了一个可视化打卡界面,此处为源码:https://github.com/catziyan/Tkinter—Gordo_Sensei,想要学习tkinter的朋友可以直接下载
此处为打包后的exe小程序,没有安装python的小伙伴也可以直接使用哦:https://pan.baidu.com/s/1E9wmvv65UiG35MYFNbOBbg
下面就不介绍具体代码了,简单介绍一下实现的功能:

1.制定任务

在这里插入图片描述
对于整个可视化界面,可以自定义窗口图标、名字、大小等。此处可视化界面有三个主菜单:制定任务、完成任务和学习评估。在制定任务界面、可以插入任何一天的学习内容和学习时间。

2.完成任务

在这里插入图片描述
在完成任务界面,可以选择任务列表中(此处我还没插入任务)的任务是否完成以及完成时间

3.学习评估

在这里插入图片描述
学习评估菜单有两个子菜单,其中学习评估是根据下式计算某一天的学习得分:
假设某天共有 n n n项任务,则第 i i i项任务得分为:

得 分 i = { 0 未完成 预 计 任 务 i 用 时 ∑ i = 1 n 预 计 任 务 i 用 时 ∗ 预 计 任 务 i 用 时 实 际 任 务 i 用 时 完成 得分_i= \begin{cases} 0 & \text{未完成}\\ \frac{预计任务i用时}{\sum_{i=1}^n 预计任务i用时}* \frac{预计任务i用时}{实际任务i用时}&\text{完成} \end{cases} i={0i=1niiii未完成完成
该公式考虑了学习效率,若比预计用时要快,则得分会更高。插入数据后,点击学习得分如下:
在这里插入图片描述
学习时间评估记录了每天的预计学习总时间和实际学习总时间,并且可以按照周或则月绘制图线,如下图所示:
在这里插入图片描述
在这里插入图片描述
因为数据插入的不够多,所以图形不那么好看…
最后补充:在该可视化界面的“选择日期”按钮中调用了博客(https://blog.csdn.net/wodeyan001/article/details/86703034)中的日历控件。

这是一个VB6的IDE插件(Addin),使用VB6的IDE直接设计Python的界面。 Python和VB都是能让人快乐的编程语言,我使用Python之后,很多自己使用的工具都使用Python开发或改写了,因为最终实现的Python代码实在太短了(相比VB),有时候Python一行代码就可以实现VB一个函数的功能。 Python就是这种让人越用越开心的语言。 不过说实在,使用Python开发GUI界面还是麻烦了一些了,自带的标准库Tkinter使用起来非常简单,不过对于习惯了VB拖放控件完成界面设计的偶来说,还是不够人性化。TK也有一个工具叫GUI Builder,不过它使用Layout布局,不够直观,而且用起来很不爽。。 至于PyQt/wxPython等GUI库,尽管有可视化设计工具,但总感觉做一般的轻量级应用是杀鸡用牛刀, 而且不够环保,不够低碳,要带一个很大的库,需要目标机器上夜同样安装了PyQt/wxPython,做不了绿色软件。 所以最终的结果是我更喜欢Tkinter,用起来很简单,绿色环保,真正的跨平台,一个py文件到处运行(担心泄密就编译成pyc)。 很多人都认为TK的界面不够美观,不过我经过多次实验后发现导入Python自带的标准TTK主题库,界面非常Native,不输PyQt/wxPython。 此Addin默认启用TTK支持,也可选择关闭。 总而言之,轻量级GUI,TK+TTK足够。 使用此Addin,你可以不用写一句代码就可以生成一个完整可运行的Python的GUI界面,支持2.X和3.X。 安装方法:将压缩包解压到你希望的目录,然后执行Setup.exe完成注册插件过程,打开VB6就可以用了。 在VB窗体上设计完成界面后(你可以大胆的设置各控件的属性,Addin尽量将其翻译为tkinter的控件属性),点工具栏上的VisualTkinter(图标为一片羽毛),再点'生成代码'按钮,即可生成可运行的Python代码,可以拷贝至剪贴板或保存至文件。 一般情况下你可以不用再改变tkinter的控件属性,但是如果你熟悉tkinter,需要更多的控制,可以一一核对各属性,并且修改,再生成代码。 当然除了用来设计界面外,此ADDIN内置的各控件属性列表可以做为编程参考,比较完整,除了极少数我认为大多数人都不用的属性外,属性定义基本上是我从官方的tkinter文档直接翻译的。 如果还没有VB6,网上找一个VB6精简版即可,不到20M,小巧玲珑。 代码已经在Github上托管,更新的版本可以在这上面找到,需求也可以在上面提: https://github.com/cdhigh/Visual-Tkinter-for-Python
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值