Salih MSA
Salih MSA

Reputation: 120

Enter key Python Tkinter

Hi so basically I want my program to 'log in' whenever i hit the enter key. How would I do this?

My code:

def Login(event=None):
Db() #calls the database function/ subroutine
if USERNAME.get() == "" or PASSWORD.get() == "":
    lbl_text.config(text="Please fill in the required details", fg="red", font="Arial")
    PASSWORD.set("") #resets the password field to nill (with no username the password field is useless)
else:
    cursor.execute("SELECT * FROM `member` WHERE `username` = ? AND `password` = ?", (USERNAME.get(), PASSWORD.get())) #username and password retrieved from database
    if cursor.fetchone() is not None:
        Home()
        PASSWORD.set("") #resets password field to nill, so nobody can log in with same credentials if the log in window is left open
        lbl_text.config(text="")
    else:
        lbl_text.config(text="Incorrect Details entered", fg="red", font="Arial")
        PASSWORD.set("") #resets the password field to nill (I don't do the same with the password field, as the password field is typically wrong)   
cursor.close()
conn.close()

btn_login = Button(Form, text="Login", width=45, command=Login)
btn_login.grid(pady=25, row=3, columnspan=3)
btn_login.bind('<Return>', Login)

Thanks

Upvotes: 1

Views: 801

Answers (1)

Stef van der Zon
Stef van der Zon

Reputation: 629

You can bind enter to a function in tkinter:

from tkinter import *

window = Tk()
window.geometry("600x400")
window.title("Test")

def test(event):
    print("Hi")

window.bind("<Return>", test)

window.mainloop()

Upvotes: 3

Related Questions