学前儿童加法算术小程序,改进版
特点:
1、图形化引导儿童学习10以内加法。
2、引导儿童把10以内的加法简化为5以内的加……
3、显示儿童做题用时、正确率。
4、儿童捣乱时,输入空值,界面无变化。
源代码:
import tkinter as tk
from tkinter import ttk
import random
import time
import datetime as dt
import osdef main():path = os.getcwd()print(path)path1 = path.replace("\\", "/")print(path1)window = tk.Tk()a = window.winfo_screenwidth() #1920b = window.winfo_screenheight() #1080print(a, b)window.geometry("%dx%d"%(a*2/3,b*2/3))#pt1= tk.PhotoImage(file = path1 + "/lvwugui.png")#pt2= tk.PhotoImage(file = path1 + "/baiwugui.png")init_time = dt.datetime.now()start_time = dt.datetime.now()end_time = dt.datetime.now()m=0 #正确次数n=0 #总次数x = random.randint(1, 10)y = random.randint(1, 10)calc = "%d + %d" %(x, y)#l = tk.Label(window, text=calc, fg="red", bg="white", font = "黑体 100", image=pt2, compound="center")l = tk.Label(window, text=calc, fg="red", bg="white", font = "黑体 100")l.pack(anchor="nw", side="top", fill="both", padx=5, pady=5)fm2 = tk.Frame(window)fm2.pack(anchor="nw", side="top", fill="both", padx=5, pady=5)pic1 = "☯☯☯☯☯☯☯☯☯☯"pic2 = "✸✸✸✸✸✸✸✸✸✸"pic3 = pic1[0:x]pic4 = pic2[0:y]pic_lb1 = tk.Label(fm2, text=pic3, font = "宋体 30", bg="light blue", wraplength=200, height=2, width=int(22*a/1440))pic_lb1.grid(row=0, column=0, padx=5, pady=5)pic_lb2 = tk.Label(fm2, text=pic4, font = "宋体 30", bg="pink",wraplength=200, height=2, width=int(22*a/1440))pic_lb2.grid(row=0, column=1, padx=5, pady=5)fm1 = tk.Frame(window)fm1.pack(anchor="nw", side="top", fill="both", padx=5, pady=5)lb1 = tk.Label(fm1, text="正确率:",font="宋体 14")lb1.grid(row=0, column=0, padx=5, pady=5)pb1 = ttk.Progressbar(fm1) #正确率pb1.grid(row=0, column=1, ipadx=a/10, padx=5, pady=5)lb2 = tk.Label(fm1, text="",font="宋体 14")lb2.grid(row=0, column=2, padx=5, pady=5)lb3 = tk.Label(fm1, text="平均用时:",font="宋体 14")lb3.grid(row=1, column=0, padx=5, pady=5)pb2 = ttk.Progressbar(fm1) #平均用时pb2.grid(row=1, column=1, ipadx=a/10, padx=5, pady=5)lb4 = tk.Label(fm1, text="",font="宋体 14")lb4.grid(row=1, column=2, padx=5, pady=5)#pb3 = ttk.Progressbar(window)l2 = tk.Label(window, bg="light blue", fg = "red", font = "宋体 14", height=1)l2.pack(anchor="nw", side="top",fill="x", padx=5, pady=5)e = tk.Entry(window, font="黑体 20", fg="red", bg="yellow")e.pack(anchor="center", side="top", padx=5, pady=5, ipadx=10, ipady=10)pb1["maximum"] = 1pb1["value"] = 0pb2["maximum"] = 30def submit_result():nonlocal xnonlocal ynonlocal calcnonlocal start_timenonlocal end_timenonlocal init_timenonlocal mnonlocal nnonlocal path inp = e.get()print(e.get())if inp=="":e.delete(0, tk.END)passelse:try: if int(inp) == x+y:n = n+1 end_time = dt.datetime.now()time_used = end_time - start_time avg_time = (end_time - init_time)/nm = m+1 l2.config(text = "正确!!", fg="red")#l.config(image = pt1)pb1["value"] = m/npb2["value"] = 30 - avg_time.secondslb2.config(text="正确数%d,总题数%d。" %(m,n))lb4.config(text="%d秒,本次用时%s秒。"%(avg_time.seconds,str(time_used.seconds)))print("正确!!")e.delete(0, tk.END)#time.sleep(3)#l2.config(text = "")start_time = dt.datetime.now()x = random.randint(1, 10)y = random.randint(1, 10)calc = "%d + %d" %(x, y)l.config(text=calc, bg="white")pic3 = pic1[0:x]pic4 = pic2[0:y]pic_lb1.config(text=pic3)pic_lb2.config(text=pic4)print(x, y)else:n = n+1end_time = dt.datetime.now()time_used = end_time - start_time avg_time = (end_time - init_time)/nl2.config(text = "错误!! 正确答案是:%d。"%(x+y), fg="green")#l.config(image = pt2)pb1["value"] = m/npb2["value"] = 30 - avg_time.secondslb2.config(text="正确数%d,总题数%d。" %(m,n))lb4.config(text="%d秒,本次用时%s秒。"%(avg_time.seconds,str(time_used.seconds)))print("错误!!")e.delete(0, tk.END)#time.sleep(3)#l2.config(text = "")start_time = dt.datetime.now()x = random.randint(1, 10)y = random.randint(1, 10)calc = "%d + %d" %(x, y)l.config(text=calc, bg="white")pic3 = pic1[0:x]pic4 = pic2[0:y]pic_lb1.config(text=pic3)pic_lb2.config(text=pic4)print(x, y)except:e.delete(0, tk.END)passdef submit_result_enter(ev=None):submit_result()e.bind("<Return>", submit_result_enter) b = ttk.Button(window, text="提交", command = submit_result)b.pack(anchor="center", side="top", padx=5, pady=5)window.mainloop()main()
学前儿童加法算术小程序,改进版相关推荐
- 黄子韬现身助力公益 百度推出听障儿童手语翻译小程序
[TechWeb]5月10日,在2019年百度联盟生态合作伙伴大会上,百度联合壹基金.58集团共同发起"听障儿童无障碍阅读计划",百度公益大使黄子韬来到了现场,参与计划启动.同时百 ...
- 用微信开发者小程序写一个加法计算器小程序
文章目录 前言 一.calculator.wxml代码 二.calculator.js代码 结果 前言 提示:用软件微信开发者小程序写一个加法计算器小程序 一.calculator.wxml代码 &l ...
- 微信小程序云开发 --实现加法操作
入门学习,有错请纠正. 整体思路: wxml中button的点击事件 触发index.js里的qiuhe函数 调用云函数,把数据传给云函数里的add下面的数据 云函数接受到数据后,进行计算,并返回结果 ...
- 微信小程序儿童自闭症测试
反正, 各种原因吧, 做了个"儿童自闭症测试"小程序, 欢迎提出改进意见!!! APP界面: 小程序二维码:
- java毕业设计儿童疫苗接种提醒系统小程序服务端Mybatis+系统+数据库+调试部署
java毕业设计儿童疫苗接种提醒系统小程序服务端Mybatis+系统+数据库+调试部署 java毕业设计儿童疫苗接种提醒系统小程序服务端Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构 ...
- 小程序制作:C# - Windows窗体应用制作加法计算器
说明 如果你觉得文章含有侵权部分,可以联系CSDN私聊,我会适当修改. 未经允许,不得转载,如需转载,请CSDN私聊. 大佬勿喷 这些小程序都是简单的小程序,所以大佬勿喷啊! 如果你喜欢这个教程的话, ...
- 微信小程序开发简易计算器改进版
微信小程序开发计算器有多种方法,但是大部分代码比较复杂.不容易理解.本案例进行了改进,主要是组件bindtap属性绑定的自定义函数clickBtn(),采用了switch语句,使得代码结构更加清晰,学 ...
- 微信小程序时间加法_微信小程序获取系统时间、时间戳、时间时间戳加减
微信小程序获取系统时间.时间戳.时间时间戳加减,微信小程序获取明天时间 //获取当前时间戳 var timestamp = Date.parse(new Date()); timestamp = ti ...
- python 儿童 游戏_防止孩子玩游戏的Python小程序
今天小编就带领大家来做一个防止孩子玩游戏的Python小程序.非常有趣,大家快来跟我一下看一下吧. 1查询电脑的所有进程 用Python循环检测电脑软件的运行情况,当发现游戏软件时弹出警告窗口,并截图 ...
最新文章
- 架构师之路 — 部署架构 — 超大规模负载均衡架构演进
- Jquery高亮显示文本中重要的关键字
- 覆盖你 80 % 网络生活的,竟是这样一家神秘实验室
- ansible(5)——使用通配符操作ansible命令
- 设计模式在项目中的应用案例_设计模式在项目中的应用(初学者版)
- 从内存中加载DLL Delphi版(转)
- ctypes python3.7_装新的python3.7时ModuleNotFoundError: No module named '_ctypes'
- java 工作一年_干java工作了快一年,到底会了什么
- oracle10g_database安装教程,Oracle Database 10g数据库安装及配置教程
- 2019配电安规电子版_2018年配电安规.docx
- 如何用东华大学的邮箱来在Cousera进行学生认证
- sis最新ip地址2020入口一_2020最新大厂内部 PHP 高级工程师面试题汇总(一)
- linux drwxr-xr-x 什么意思
- 微风:PS抠图方法大全
- 【网络】把路由器用作交换机的方案
- 雷军考察小鹏汽车,IPO后的小米终于要造车了?
- wpa_supplicant的用法
- 《王者圣域》2.23上线链游玩家|放置塔防、趣味竞技
- 猫狗大战——基于TensorFlow的猫狗识别(2)
- windows 2008文件服务器审计