如何将 '<Return>' 绑定到 tkinter 中的焦点(选项卡式)按钮?

Big*_*pie 2 python tkinter

我的 tkinter 8.5 GUI(在 Windows 7 上)中有多个按钮。我希望当用户按 Enter 时选择聚焦(选项卡式)的任何按钮。我知道我必须绑定'<Return>',但我需要填补其余的空白。

提前致谢!

小智 5

假设您希望这对根窗口中的所有应用程序通用,您可以执行类似的操作。

def clickButton():
    widget = root.focus_get()
    if widget != root:
        widget.invoke()

root = Tkinter.Tk()
root.bind("<Return>", clickButton)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

这将运行与当前选项卡式选择关联的任何命令。如果您想将其限制为某些按钮,您可以在方法内部进行类型检查。小部件将是当前通过选项卡式选择获得焦点的任何小部件。还要注意用户在某些可能不支持调用方法的小部件上按 Enter 键。

  • 我知道这已经过时了,但我确实想指出,使用 Python3,您需要将“event”作为参数添加到您想要_bind_的函数中。所以它看起来像“clickButton(event)”。 (3认同)