运行效果:
完整源码:
##import library from tkinter import * import time from playsound import playsound ## display window root = Tk() root.geometry('400x300') root.resizable(0,0) root.config(bg ='blanched almond') root.title('TechVidvan - Countdown Clock And Timer') Label(root, text = 'Countdown Clock and Timer' , font = 'arial 20 bold', bg ='papaya whip').pack() #display current time####################### Label(root, font ='arial 15 bold', text = 'current time :', bg = 'papaya whip').place(x = 40 ,y = 70) ####fun to display current time def clock(): clock_time = time.strftime('%H:%M:%S %p') curr_time.config(text = clock_time) curr_time.after(1000,clock) curr_time =Label(root, font ='arial 15 bold', text = '', fg = 'gray25' ,bg ='papaya whip') curr_time.place(x = 190 , y = 70) clock() #######################timer countdown########## #storing seconds sec = StringVar() Entry(root, textvariable = sec, width = 2, font = 'arial 12').place(x=250, y=155) sec.set('00') #storing minutes mins= StringVar() Entry(root, textvariable = mins, width =2, font = 'arial 12').place(x=225, y=155) mins.set('00') # storing hours hrs= StringVar() Entry(root, textvariable = hrs, width =2, font = 'arial 12').place(x=200, y=155) hrs.set('00') ##########fun to start countdown def countdown(): times = int(hrs.get())*3600+ int(mins.get())*60 + int(sec.get()) while times > -1: minute,second = (times // 60 , times % 60) hour = 0 if minute > 60: hour , minute = (minute // 60 , minute % 60) sec.set(second) mins.set(minute) hrs.set(hour) root.update() time.sleep(1) if(times == 0): playsound('Loud_Alarm_Clock_Buzzer.mp3') sec.set('00') mins.set('00') hrs.set('00') times -= 1 Label(root, font ='arial 15 bold', text = 'set the time', bg ='papaya whip').place(x = 40 ,y = 150) Button(root, text='START', bd ='5', command = countdown, bg = 'antique white', font = 'arial 10 bold').place(x=150, y=210) root.mainloop()
想要获得更多关于python的资讯、工具、实例,请关注python客栈
以上就是python 实现倒计时功能(gui界面)的详细内容,更多关于python 倒计时的资料请关注呐喊教程其它相关文章!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。