当前分类:tkinter>>正文

tkiner:用Label组件写个简易计时器

来源:互联网   更新时间:2023年6月10日  

计时器主要功能:

每秒计时1,直到点击暂停按钮为止。

要求是,点击开始,如果已经在计时,则按钮上提示为正在计时,否则开始计时。

点击暂停按钮,如果正在计时,则计时暂停,如果未计时,则不需要做出响应。

实现代码如下:

from tkinter import *

root = Tk()

root.title('计时器')

root.geometry('300x300')

Label1=Label(root,text='计时器',

             font=('微软雅黑',20,'bold'),

             width=8,

             height=5,fg='red')

Label1.place(x=60,y=10)#居中显示

running=False

jobid=None

def timecnt(time):  

    global jobid

    global running

    Label1.config(text=time)

    if running:

        jobid=root.after(1000,timecnt,time+1)

def start():

    global jobid

    global running

    if running:

        bt.config(text='计时中')

    else:    

        running=True

        timecnt(0)

        bt.config(text='计时中')

        bt3.config(text='暂停')

def stop():

    global jobid

    global running

    if running:

        running=False

        root.after_cancel(jobid)

        bt3.config(text='已暂停')

        bt.config(text='计时') 


bt = Button(root, text='开始', command=start)

bt.place(x=130,y=180)

bt3 = Button(root, text='暂停', command=stop)

bt3.place(x=180,y=180)

root.mainloop()

代码有四十多行,有没有大佬给一个优化方案,学习一下哦。

本文固定链接:https://6yhj.com/leku-p-4244.html  版权所有,转载请保留本地址!
[猜你喜欢]

标签: Tkinter示例