此代码试图将命令绑定(bind)到框架,即。当按下“Escape”键时,窗口应该被销毁。
from tkinter import *
from tkinter import ttk
root=Tk()
root.geometry("400x400")
frame1=ttk.Frame(root)
frame1.pack()
def Exit(event):
root.destroy()
frame1.bind("<Escape>", Exit)
root.mainloop()
如果 frame1.bind() 被替换为 root.bind(),代码会像我预期的那样工作。为什么我上面写的不起作用?
请您参考如下方法:
绑定(bind)有效,但事件只会在框架有焦点时触发,默认情况下框架没有键盘焦点。
尝试使用 frame1.focus_set() 设置焦点
