Python如何写一个GUI倒计时器,代码是什么
Admin 2022-08-13 群英技术资讯 1141 次浏览
今天就跟大家聊聊有关“Python如何写一个GUI倒计时器,代码是什么”的内容,可能很多人都不太了解,为了让大家认识和更进一步的了解,小编给大家总结了以下内容,希望这篇“Python如何写一个GUI倒计时器,代码是什么”文章能对大家有帮助。
代码:
import tkinter as tk
from time import time
print("hello world")
class TimeCounter:
def __init__(self):
root = tk.Tk()
root.title("计时器")
root.geometry('800x600')
self.display = tk.Label(root, text="00:00", , font=('微软雅黑', 50), fg="red")
self.display.pack()
self.button_start = tk.Button(root, text='start', command=self.start)
self.button_start.pack()
self.Varmin = tk.StringVar()
self.entrymin = tk.Entry(root, textvariable = self.Varmin)
self.entrymin.pack()
self.Varsec = tk.StringVar()
self.entrysec = tk.Entry(root, textvariable = self.Varsec)
self.entrysec.pack()
self.paused = True
root.mainloop() # 进入消息循环
def start(self):
if self.paused:
self.oldtime = time()
self.paused = False
self.run_timer()
def gettime(self):
try:
min = self.entrymin.get()
min = int(min)
except:
min = 0
try:
sec = self.entrysec.get()
sec = int(sec)
except:
sec = 0
self.minsec = 60*min+sec
return self.minsec
def run_timer(self):
self.minsec = self.gettime()
self.deltas = time() - self.oldtime # 正向计时
self.deltas1 = self.minsec - self.deltas
print(self.deltas)
print(self.deltas1)
if self.deltas1>0:
deltasstr = '{:.0f}:{:.3f}'.format(*divmod(self.deltas1,60)) #用 * 拆分这个元组
else:
deltasstr = '00:00'
print(deltasstr)
self.display.config(text = deltasstr) #更新 text
self.display.after(1,self.run_timer) # 间隔1毫秒再次执行run_timer函数,after循环定时器
TimeCounter()
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
本文实例讲述了PHP设计模式:原型模式Prototype。分享给大家供大家参考,具体如下:
基于PHP怎样写一个简单的投票系统?下文的讲解详细,步骤过程清晰,对大家进一步学习和理解相关知识有一定的帮助。有这方面学习需要的朋友就继续往下看吧!
PHP延迟静态绑定怎么样使用?对于“延迟静态绑定”的用法很多人不是很清楚,下面通过一个实例给大家介绍一下PHP延迟静态绑定怎样用,感兴趣的朋友就继续往下看吧。
这篇文章主要介绍了如何在Laravel5.8中正确地应用Repository设计模式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了laravel框架的安装与路由,结合实例形式分析了Laravel框架安装的相关步骤、命令及路由相关使用技巧,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008