python編寫一個(gè)GUI倒計(jì)時(shí)器
本文實(shí)例為大家分享了python實(shí)現(xiàn)GUI倒計(jì)時(shí)器的具體代碼,供大家參考,具體內(nèi)容如下
代碼:
import tkinter as tk from time import time ? print("hello world") ? ? class TimeCounter: ? ? def __init__(self): ? ? ? ? root = tk.Tk() ? ? ? ? root.title("計(jì)時(shí)器") ? ? ? ? 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() ? ? ?# 進(jìn)入消息循環(huán) ? ? ? 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 ? # ?正向計(jì)時(shí) ? ? ? ? self.deltas1 = self.minsec - self.deltas ? ? ? ? ? print(self.deltas) ? ? ? ? print(self.deltas1) ? ? ? ? if self.deltas1>0: ? ? ? ? ? ? deltasstr = '{:.0f}:{:.3f}'.format(*divmod(self.deltas1,60)) ? #用 * 拆分這個(gè)元組 ? ? ? ? else: ? ? ? ? ? ? deltasstr = '00:00' ? ? ? ? ? print(deltasstr) ? ? ? ? self.display.config(text = deltasstr) #更新 text ? ? ? ? self.display.after(1,self.run_timer) ?# 間隔1毫秒再次執(zhí)行run_timer函數(shù),after循環(huán)定時(shí)器 ? ? TimeCounter()
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
opencv導(dǎo)入頭文件時(shí)報(bào)錯(cuò)#include的解決方法
這篇文章主要介紹了opencv導(dǎo)入頭文件時(shí)報(bào)錯(cuò)#include的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07淺談Python使用pickle模塊序列化數(shù)據(jù)優(yōu)化代碼的方法
這篇文章主要介紹了淺談Python使用pickle模塊序列化數(shù)據(jù)優(yōu)化代碼的方法,pickle模塊可以對(duì)多種Python對(duì)象進(jìn)行序列化和反序列化,序列化稱為pickling,反序列化稱為unpickling,需要的朋友可以參考下2023-07-07利用python實(shí)現(xiàn).dcm格式圖像轉(zhuǎn)為.jpg格式
今天小編就為大家分享一篇利用python實(shí)現(xiàn).dcm格式圖像轉(zhuǎn)為.jpg格式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-01-01selenium+python實(shí)現(xiàn)自動(dòng)登錄腳本
下面小編就為大家分享一篇selenium+python實(shí)現(xiàn)自動(dòng)登錄腳本,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-04-04Centos環(huán)境部署django項(xiàng)目的全過程(永久復(fù)用)
Django是一款針對(duì)Python環(huán)境的WEB開發(fā)框架,能夠幫助我們構(gòu)架快捷,下面這篇文章主要給大家介紹了關(guān)于Centos環(huán)境部署django項(xiàng)目的相關(guān)資料,需要的朋友可以參考下2022-10-10python性能測(cè)試對(duì)手機(jī)號(hào)綁定進(jìn)行壓測(cè)
這篇文章主要為大家介紹了python性能測(cè)試對(duì)手機(jī)號(hào)綁定進(jìn)行壓測(cè)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07