请帮我写一个用python语言好看的登录界面,可以连接后台数据库的
时间: 2023-05-17 09:05:07 浏览: 56
非常感谢您的提问!以下是一个简单的Python登录界面示例,它使用了Tkinter库和SQLite数据库:
```python
import tkinter as tk
import sqlite3
class LoginWindow:
def __init__(self, master):
self.master = master
self.master.title("登录")
self.master.geometry("300x200")
# 创建用户名和密码标签
tk.Label(self.master, text="用户名:").grid(row=0, column=0, padx=5, pady=5)
tk.Label(self.master, text="密码:").grid(row=1, column=0, padx=5, pady=5)
# 创建用户名和密码输入框
self.username_entry = tk.Entry(self.master)
self.username_entry.grid(row=0, column=1, padx=5, pady=5)
self.password_entry = tk.Entry(self.master, show="*")
self.password_entry.grid(row=1, column=1, padx=5, pady=5)
# 创建登录按钮
tk.Button(self.master, text="登录", command=self.login).grid(row=2, column=0, columnspan=2, padx=5, pady=5)
def login(self):
# 获取用户名和密码
username = self.username_entry.get()
password = self.password_entry.get()
# 连接数据库
conn = sqlite3.connect("users.db")
cursor = conn.cursor()
# 查询用户信息
cursor.execute("SELECT * FROM users WHERE username=? AND password=?", (username, password))
user = cursor.fetchone()
# 关闭数据库连接
cursor.close()
conn.close()
# 判断用户是否存在
if user:
tk.messagebox.showinfo("登录成功", "欢迎回来,%s!" % username)
else:
tk.messagebox.showerror("登录失败", "用户名或密码错误!")
if __name__ == "__main__":
# 创建数据库表
conn = sqlite3.connect("users.db")
cursor = conn.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY AUTOINCREMENT, username TEXT, password TEXT)")
cursor.execute("INSERT INTO users (username, password) VALUES (?, ?)", ("admin", "admin"))
conn.commit()
cursor.close()
conn.close()
# 创建登录窗口
root = tk.Tk()
app = LoginWindow(root)
root.mainloop()
```
这个登录界面使用了SQLite数据库来存储用户信息,可以连接后台数据库。当用户输入用户名和密码后,程序会查询数据库中是否存在该用户,如果存在则显示登录成功的提示框,否则显示登录失败的提示框。
希望这个示例对您有所帮助!如果您有任何问题或建议,请随时联系我。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)