【发布时间】:2020-07-14 03:46:39
【问题描述】:
我正在尝试编写一个小时钟来跟踪我的工作时间。它是一个非常简单的程序,可以计算两个日期时间变量的差异。
我有以下问题:
当我按下停止按钮时,程序会打印正确的时间。但我想打印正确的时间然后重置计时器。但这不起作用,因为我无法更改变量“startzeit”。有什么办法可以让这个工作像真正的手表一样?
from tkinter import *
import datetime
startzeit = datetime.datetime.today()
stoppzeit = datetime.datetime.today()
date = datetime.date.today()
def start():
global startzeit
startzeit = datetime.datetime.today()
def stopp():
stoppzeit = datetime.datetime.today()
diff = stoppzeit-startzeit
print(date, ":", diff)
fenster = Tk()
fenster.title("Stechuhr ")
fenster.geometry("170x40")
Start = Button(fenster, text="Start", command=start)
Start.place(x=10, y=10, width=70, height=20)
Stop = Button(fenster, text="Stop", command=stopp)
Stop.place(x=90, y=10, width=70, height=20)
mainloop()
【问题讨论】:
-
1) 全局
stoppzeit不是必须的; 2) 添加global startzeit并在stopp()内的print(...)之后为其分配stoppzeit的值。
标签: python button tkinter stopwatch