Tkinter based on python writing login registration interface

  • 2020-06-07 04:43:27
  • OfStack

tkinter created the login and registration interface for your reference, the specific content is as follows


import tkinter as tk
from tkinter import messagebox
 
# Center the window 
def window_info():
 ws = window.winfo_screenwidth()
 hs = window.winfo_screenheight()
 x = (ws / 2) - 200
 y = (hs / 2) - 200
 print("%d,%d" % (ws, hs))
 return x,y
 
# Set the login window properties 
window = tk.Tk()
window.title(' Welcome to the parking fee system ')
a,b=window_info()
window.geometry("450x300+%d+%d"%(a,b))
 
# Login interface information 
tk.Label(window,text=" Carpark charging system ",font=(" Song typeface ",32)).place(x=80,y=50)
tk.Label(window,text=" Account: ").place(x=120,y=150)
tk.Label(window,text=" Password: ").place(x=120,y=190)
# Display input box 
var_usr_name = tk.StringVar()
# Display default account 
var_usr_name.set('1400370101')
entry_usr_name=tk.Entry(window,textvariable=var_usr_name)
entry_usr_name.place(x=190,y=150)
var_usr_pwd = tk.StringVar()
# Display after setting input password * No. 
entry_usr_pwd = tk.Entry(window,textvariable=var_usr_pwd,show='*')
entry_usr_pwd.place(x=190,y=190)
 
# Log in function 
def usr_login():
 # Get the password for the entered account 
 usr_name = var_usr_name.get()
 usr_pwd = var_usr_pwd.get()
 # Get the stored account information, using the database here, call the database query function, but also can use other ways, such as files 
 dicts = SQL.load('login')
 print(dicts)
 bool = False
 for row in dicts:
 print(row.get("name"))
 if usr_name == row["name"]:
  bool = True
  pwd = row["password"]
  print(row)
 if bool == True:
 if usr_pwd == pwd:
  tk.messagebox.showinfo(title='Welcome', message='How are you?' +usr_name)
  mainwindow()
 else:
  tk.messagebox.showerror(message=' Sorry, input error, please try again! ')
 else:
 is_sign_up = tk.messagebox.askyesno('Welcome', ' You haven't registered yet. Should you register now? ')
 if is_sign_up:
  usr_sign_up()
# Registered account 
def usr_sign_up():
 def sign_to_Pyhon():
 np = new_pwd.get()
 npc = new_pwd_confirm.get()
 nn = new_name.get()
 
 dicts = SQL.load('login')
 print(dicts)
 bool = False
 for row in dicts:
  if nn == row["name"]:
  bool = True
  print(row)
 if np!=npc:
  tk.messagebox.showerror(' I'm sorry ',' The password is not entered twice 1 Cause! ')
 elif bool:
  tk.messagebox.showerror((' I'm sorry ',' This account already exists !'))
 else:
  try:
  SQL.insert_login(str(nn),str(np))
  tk.messagebox.showinfo('Welcome',' You have registered successfully! ')
  except:
  tk.messagebox.showerror((' Registration failed !'))
  window_sign_up.destroy()
 # create top The window ACTS as a registration window 
 window_sign_up = tk.Toplevel(window)
 window_sign_up.geometry('350x200')
 window_sign_up.title(' registered ')
 
 new_name = tk.StringVar()
 new_name.set('1400370115')
 tk.Label(window_sign_up,text=' account :').place(x=80,y=10)
 entry_new_name = tk.Entry(window_sign_up,textvariable=new_name)
 entry_new_name.place(x=150,y=10)
 
 new_pwd = tk.StringVar()
 tk.Label(window_sign_up, text=' password :').place(x=80, y=50)
 entry_usr_pwd = tk.Entry(window_sign_up,textvariable=new_pwd,show='*')
 entry_usr_pwd.place(x=150, y=50)
 
 new_pwd_confirm = tk.StringVar()
 tk.Label(window_sign_up,text=' Input again :').place(x=80,y=90)
 entry_usr_pwd_again = tk.Entry(window_sign_up,textvariable=new_pwd_confirm,show='*')
 entry_usr_pwd_again.place(x=150, y=90)
 
 btn_again_sign_up = tk.Button(window_sign_up,text=' registered ',command=sign_to_Pyhon)
 btn_again_sign_up.place(x=160,y=130)
 
# Login and register buttons 
btn_login = tk.Button(window,text=" landing ",command=usr_login)
btn_login.place(x=170,y=230)
btn_sign_up = tk.Button(window,text=" registered ",command=usr_sign_up)
btn_sign_up.place(x=270,y=230)
 
window.mainloop()

This is the login and registration interface I wrote, using tkinter, you can achieve simple login and registration account, using Label, Entry and Button components.


Related articles: