Этот код в основном позволяет пользователю установить обратный отсчет (в секундах), и когда обратный отсчет достигает нуля, появляется сообщение. Я новичок в tkinter и python, поэтому я точно не знаю, как сделать так, чтобы мой отсчет отображался в окне tkinter, потому что он отображается только в cmd.
import time
import tkinter as Alarm
class test(Alarm.Frame):
def __init__(self, parent):
Alarm.Frame.__init__(self, parent)
self.prompt = Alarm.Label(self, text="Enter seconds:", anchor="w")
self.entry = Alarm.Entry(self)
self.output = Alarm.Label(self, text="")
self.submit = Alarm.Button(self, text="Submit", command = self.startTimer)
self.prompt.pack(side="top", fill="x")
self.entry.pack(side="top", fill="x", padx=20)
self.output.pack(side="top", fill="x", expand=True)
self.submit.pack(side="right")
def countdown(k,q):
j=q
k=0
while True:
if(j>=0):
print(str(j),end="\r")
time.sleep(1)
j-=1
if(j==-1):
break
if(j==-1):
print("Alarm!", end="\r")
time.sleep(1)
def startTimer(self):
try:
i = int(self.entry.get())
self.countdown(i)
except ValueError:
print("Please enter whole digits only in all boxes")
if __name__ == "__main__":
root = Alarm.Tk()
test(root).pack(fill="both", expand=True)
root.mainloop()