首页 > 解决方案 > 我试图将我的 Tkinter 按钮绑定到键盘上的 Enter 键,但它不起作用

问题描述

我的代码是:

def check(FName_Entry, LName_Entry, Age_Entry, Phone_Entry, event = None):
    FName = FName_Entry.get()
    LName = LName_Entry.get()
    Age = Age_Entry.get()
    Number = Phone_Entry.get()
    length = len(Phone_Entry.get())
    if not FName.isalpha():
        errormsg = Message(root, text='Enter a valid first name', anchor=CENTER, bg = "red", width = 1000)
        canvas.create_window(1020, 134, anchor=NW, window=errormsg)
        # messagebox.showerror('Only letters', 'Only letters are allowed!')

这继续 -

def Per_Form():
.
.
Next_button = Button(root, text="Next", anchor=CENTER, command=lambda: check(FName_Entry, LName_Entry, Age_Entry, Phone_Entry))
    Next_button.configure(width=10, bg="black", fg="blue", border=10)
    canvas.create_window(920, 450, anchor=NW, window=Next_button)
    Next_button.bind("<Return>", check)

我也检查了许多网站和堆栈溢出页面,有太多方法可以做到这一点,以至于我很困惑该使用哪一个,而我尝试过的大多数都不起作用。

我尝试将我Next_buttoncheck功能和键盘上的 Enter 键绑定,但它不起作用,我仍然必须使用鼠标单击按钮 - 我该怎么办?

标签: pythonpython-3.xtkinterbindtkinter-canvas

解决方案


在将 Button 绑定到 Enter-Event 时,您已经提供了所有必要的参数试试这个:

Next_button.bind("<Return>", lamnda event: check(FName_Entry, LName_Entry, Age_Entry, Phone_Entry))

推荐阅读