1 程序继续优化,login.py调用数据封装模块db.py
2 主程序
import tkinter as tk
from tkinter import messagebox
from matplotlib.pyplot import flag
from db import db
root =tk.Tk()
root.geometry('300x180')
root.title('登录页')
username=tk.StringVar()
password=tk.StringVar()
page=tk.Frame(root)
page.pack()
tk.Label(page).grid(row=0,column=0)
tk.Label(page,text='账户:').grid(row=1,column=1,pady=10)
tk.Entry(page,textvariable=username).grid(row=1,column=2)
tk.Label(page,text='密码:').grid(row=2,column=1)
tk.Entry(page,textvariable=password).grid(row=2,column=2)
def login():
name=username.get()
pwd=password.get()
flag,message=db.check_login(name,pwd)
if flag:
print('登录成功')
else:
messagebox.showwarning(title='警告',message=message)
tk.Button(page,text='登录',command=login).grid(row=3,column=1,pady=10)
tk.Button(page,text='退出',command=page.quit).grid(row=3,column=3)
root.mainloop()3 db.py文件程序
import json
class MysqlDatabases:
def __init__(self) :
with open('users.json',mode='r',encoding='utf-8') as f:
text=f.read()
self.users=json.loads(text)
def check_login(self,username,password):
for user in self.users:
if username==user['username']:
if password==user['password']:
return True,'登录成功'
else:
return False,"登录失败,密码不存在"
return False,'登录失败,用户不存在'
db=MysqlDatabases()
if __name__=='__main__':
print(db.check_login('admin','123456'))
4 users.json 文件内容
[{"username":"admin","password":"123456"}]三个文件需要在一个根目录下
5 程序效果
| 留言与评论(共有 0 条评论) “” |