特金特'space'装订和条目清理

  • 本文关键字:金特 space python tkinter
  • 更新时间 :
  • 英文 :


好的,我正在用Tkinter做一个打字速度测试。我想在按空格键时清除入口。然而,它确实是这样做的,因为空格被绑定为清除条目的键,就好像Tkinter清除了条目,然后在条目上添加了空间。也就是说,在输入第一个单词之后,在开始输入下一个单词之前,条目的开头总是有一个空格。

您可以通过返回"break"来获得所需的行为。这将确保事件不会传播到其他处理程序。

下面是一个简单的例子:

import tkinter as tk
def handle(event):
entry.delete("0", "end")
return "break"
root = tk.Tk()
entry = tk.Entry(root)
entry.pack()
entry.bind("<space>", handle)
root.mainloop()

正如@ theelizzard指出的,你也可以尝试:entry.bind("<KeyRelease-space>", handle)

import tkinter as tk
def handle(event):
entry.delete("0", "end")
root = tk.Tk()
entry = tk.Entry(root)
entry.pack()
entry.bind("<KeyRelease-space>", handle)
root.mainloop()

另外,需要注意的是,第二种解决方案将添加一个空格然后删除,而第一种解决方案只是删除文本而不添加任何空格。

最新更新