Python基于Tkinter实现GUI倒计时器
本文介绍如何使用Python的Tkinter库构建一个图形用户界面倒计时器。通过定义TimeCounter类,整合标签显示、按钮控制及输入框功能,实现开始计时与时间更新逻辑。代码包含界面布局设置及定时器循环机制,为Python初学者提供完整的GUI编程示例。
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", width=20, 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()以上即为本文的全部内容,希望能为读者的Python学习提供有益帮助,同时也感谢大家的支持。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









