在 Linux 上使用 Tkinter 和 Python,我试图通过使用KeyboardInterrupt
例外,但是当我按下它时,有一段时间没有任何反应。最终它“接受”并退出。示例程序:
import sys
from Tkinter import *
try:
root = Tk()
root.mainloop()
except:
print("you pressed control c")
sys.exit(0)
怎样才能让程序反应更快呢?
这有点问题,因为一般来说,在调用mainloop
方法您依赖 Tcl 来处理事件。由于您的应用程序什么也不做,因此 Tcl 没有理由对任何事情做出反应,尽管它最终会处理其他事件(正如您所注意到的,这可能需要一些时间)。避免这种情况的一种方法是让 Tcl/Tk 做一些事情,安排人工事件,如下所示:
from Tkinter import Tk
def check():
root.after(50, check) # 50 stands for 50 ms.
root = Tk()
root.after(50, check)
root.mainloop()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)