如何使用tkinter重置计时器

0 投票
1 回答
1197 浏览
提问于 2025-04-18 09:04

我一直在尝试写一个程序,它会从10开始倒计时,倒到0后再重置。
现在倒计时是能正常进行的,但我还没找到让计时器重置的方法。
请帮帮我。

from tkinter import *
import time

class App():
    def __init__(self):
        self.window = Tk()
        self.root = Frame(self.window, height=200,width=200)
        self.root.pack()
        self.root.pack_propagate(0)
        self.window.title('Timer')
        self.label = Label(text="")
        self.label.pack()
        self.sec = 11
        self.timerupdate()
        self.root.mainloop()
    def timerupdate(self):
        if self.sec!=0:
            self.sec-=1
            self.label.configure(text=self.sec)
            self.root.after(1000, self.timerupdate)

app=App()
app.mainloop()

1 个回答

1
from Tkinter import *
import time

class App():
    def __init__(self):
        self.window = Tk()
        self.root = Frame(self.window, height=200,width=200)
        self.root.pack()
        self.root.pack_propagate(0)
        self.window.title('Timer')
        self.label = Label(text="")
        self.label.pack()
        self.sec = 11
        self.timerupdate()
        self.root.mainloop()
    def timerupdate(self):
        if self.sec!=0:
            self.sec-=1
            self.label.configure(text=self.sec)
            self.root.after(1000, self.timerupdate)
        if self.sec == 0:
          self.sec = 11

app=App()
app.mainloop()

只需要设置一下,当你的计时器到达0的时候,self.sec这个变量就重置为11。

撰写回答