簡體   English   中英

如何測量python與tkinter按下按鈕之間的經過時間?

[英]How can I measure elapsed time between the press of buttons in python with tkinter?

我是python的新手,我正在嘗試為自己做一個小項目,但我不明白如何使用stop函數中start函數的初始時間變量,我可以用它做數學運算。 這是我目前的代碼:

import time
import Tkinter
import tkMessageBox

top = Tkinter.Tk()

def start_time():
   tkMessageBox.showinfo("Timer", "The timer will now begin")
   initial = time.time()
   return initial

def stop_time(initial):
   final = time.time()
   tkMessageBox.showinfo("Timer", final - initial)

Start = Tkinter.Button(top, text ="Start", command = start_time)
Stop = Tkinter.Button(top, text ="Stop", command = stop_time)
Start.pack()
Stop.pack()
top.mainloop()

您的功能需要就共享數據的共同位置達成一致。 對於這個簡單的例子,模塊的全局命名空間是一個不錯的選擇。 您需要做的就是將global initial添加到更新它的函數中。 對於較大的項目,您可以移動到包含變量的對象和更新它的函數,但這對您的目標來說很好。

import time
import Tkinter
import tkMessageBox

initial = 0

top = Tkinter.Tk()

def start_time():
   global initial
   tkMessageBox.showinfo("Timer", "The timer will now begin")
   initial = time.time()
   return initial

def stop_time():
   # you could check for initial == 0 and display an error
   final = time.time()
   tkMessageBox.showinfo("Timer", final - initial)

Start = Tkinter.Button(top, text ="Start", command = start_time)
Stop = Tkinter.Button(top, text ="Stop", command = stop_time)
Start.pack()
Stop.pack()
top.mainloop()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM