基于python的Tkinter編寫(xiě)登陸注冊(cè)界面
tkinter創(chuàng)建登陸注冊(cè)界面,供大家參考,具體內(nèi)容如下
import tkinter as tk
from tkinter import messagebox
#設(shè)置窗口居中
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
#設(shè)置登陸窗口屬性
window = tk.Tk()
window.title('歡迎使用停車(chē)場(chǎng)收費(fèi)系統(tǒng)')
a,b=window_info()
window.geometry("450x300+%d+%d"%(a,b))
#登陸界面的信息
tk.Label(window,text="停車(chē)場(chǎng)收費(fèi)系統(tǒng)",font=("宋體",32)).place(x=80,y=50)
tk.Label(window,text="賬號(hào):").place(x=120,y=150)
tk.Label(window,text="密碼:").place(x=120,y=190)
#顯示輸入框
var_usr_name = tk.StringVar()
#顯示默認(rèn)賬號(hào)
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()
#設(shè)置輸入密碼后顯示*號(hào)
entry_usr_pwd = tk.Entry(window,textvariable=var_usr_pwd,show='*')
entry_usr_pwd.place(x=190,y=190)
#登陸函數(shù)
def usr_login():
#獲取輸入的賬號(hào)密碼
usr_name = var_usr_name.get()
usr_pwd = var_usr_pwd.get()
#獲取存儲(chǔ)的賬戶(hù)信息,此處使用的是數(shù)據(jù)庫(kù),調(diào)用數(shù)據(jù)庫(kù)查詢(xún)函數(shù),也可以使用其他方式,如文件等
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='對(duì)不起,輸入錯(cuò)誤,請(qǐng)重試!')
else:
is_sign_up = tk.messagebox.askyesno('Welcome', '您還沒(méi)有注冊(cè),是否現(xiàn)在注冊(cè)呢?')
if is_sign_up:
usr_sign_up()
#注冊(cè)賬號(hào)
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('對(duì)不起','兩次密碼輸入不一致!')
elif bool:
tk.messagebox.showerror(('對(duì)不起','此賬號(hào)已經(jīng)存在!'))
else:
try:
SQL.insert_login(str(nn),str(np))
tk.messagebox.showinfo('Welcome','您已經(jīng)注冊(cè)成功!')
except:
tk.messagebox.showerror(('注冊(cè)失敗!'))
window_sign_up.destroy()
#創(chuàng)建top窗口作為注冊(cè)窗口
window_sign_up = tk.Toplevel(window)
window_sign_up.geometry('350x200')
window_sign_up.title('注冊(cè)')
new_name = tk.StringVar()
new_name.set('1400370115')
tk.Label(window_sign_up,text='賬號(hào):').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='密碼:').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='再次輸入:').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='注冊(cè)',command=sign_to_Pyhon)
btn_again_sign_up.place(x=160,y=130)
#登陸和注冊(cè)按鈕
btn_login = tk.Button(window,text="登陸",command=usr_login)
btn_login.place(x=170,y=230)
btn_sign_up = tk.Button(window,text="注冊(cè)",command=usr_sign_up)
btn_sign_up.place(x=270,y=230)
window.mainloop()
這是我寫(xiě)的登陸注冊(cè)界面,使用tkinter,可以實(shí)現(xiàn)簡(jiǎn)單的登陸和注冊(cè)賬號(hào),使用的主要是Label,Entry和Button組件。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python使用requirements.txt和pip打包批量安裝的實(shí)現(xiàn)
本文主要介紹了Python使用requirements.txt和pip打包批量安裝的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
Python?Fire創(chuàng)建簡(jiǎn)單的命令行接口
Python?Fire是一個(gè)開(kāi)源庫(kù),它能夠自動(dòng)生成命令行接口,讓Python程序變得更加友好和易用,本文主要為大家介紹了Python?Fire如何根據(jù)Python函數(shù)自動(dòng)生成命令行接口,感興趣的可以了解下2023-11-11
Python 居然可以在 Excel 中畫(huà)畫(huà)你知道嗎
哈嘍,哈嘍~對(duì)于Excel大家想到的是不是各種圖表制作,今天我們來(lái)個(gè)不一樣的。十字繡大家都知道吧,今天咱們來(lái)玩?zhèn)€電子版的十字繡2022-02-02
Python Multinomial Naive Bayes多項(xiàng)貝葉斯模型實(shí)現(xiàn)原理介紹
這篇文章主要介紹了Python Multinomial Naive Bayes多項(xiàng)貝葉斯模型實(shí)現(xiàn)原理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2022-09-09
教你兩步解決conda安裝pytorch時(shí)下載速度慢or超時(shí)的問(wèn)題
這篇文章主要介紹了教你兩步解決conda安裝pytorch時(shí)下載速度慢or超時(shí)的問(wèn)題,使用清華鏡像源可以大大減少安裝的時(shí)間,需要的朋友可以參考下2023-03-03

