3

此代码尝试将命令绑定到框架,即。当按下“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(),则代码按我的预期工作。为什么我上面写的不起作用?

4

1 回答 1

8

绑定有效,但仅当框架具有焦点时才会触发该事件,并且默认情况下框架没有键盘焦点。

尝试设置焦点frame1.focus_set()

于 2013-06-04T17:03:13.177 回答