使用 Tkinter,您可以绑定到<Any-KeyPress>
. 被调用的函数被传递一个具有时间戳的事件对象。您可以使用它来计算事件之间的时间。
这是一个快速示例,展示了如何显示按键之间的时间。您当然可以根据需要添加自己的逻辑来计数、跟踪和显示。
import Tkinter as tk
class Example(tk.Frame):
def __init__(self, parent):
self.last_event = None
tk.Frame.__init__(self, parent)
self.label = tk.Label(self, text="")
self.text = tk.Text(self, wrap="word")
self.label.pack(side="top", fill="x")
self.text.pack(fill="both", expand=True)
self.text.bind("<Any-KeyRelease>", self.on_key_release)
def on_key_release(self, event):
if self.last_event is not None:
delta = event.time - self.last_event.time
self.label.configure(text="time since last event: %s ms" % delta)
self.last_event = event
if __name__ == "__main__":
root = tk.Tk()
Example(root).pack(fill="both", expand=True)
root.mainloop()