用tkinter编写一个自动生成验证码,并用账号,密码,验证码登录的用户登录界面
时间: 2024-05-09 08:16:28 浏览: 13
好的,以下是使用 Python 和 Tkinter 模块编写的自动生成验证码和登录界面的示例代码:
```python
from tkinter import *
from tkinter import messagebox
import random
class Login:
def __init__(self, master):
self.master = master
self.master.title("登录")
self.master.geometry("300x200")
self.username_label = Label(self.master, text="账号:")
self.username_label.grid(row=0, column=0, padx=10, pady=10)
self.username_entry = Entry(self.master)
self.username_entry.grid(row=0, column=1, padx=10, pady=10)
self.password_label = Label(self.master, text="密码:")
self.password_label.grid(row=1, column=0, padx=10, pady=10)
self.password_entry = Entry(self.master, show="*")
self.password_entry.grid(row=1, column=1, padx=10, pady=10)
self.captcha_label = Label(self.master, text="验证码:")
self.captcha_label.grid(row=2, column=0, padx=10, pady=10)
self.captcha_entry = Entry(self.master)
self.captcha_entry.grid(row=2, column=1, padx=10, pady=10)
self.captcha_button = Button(self.master, text="生成验证码", command=self.generate_captcha)
self.captcha_button.grid(row=3, column=0, padx=10, pady=10)
self.login_button = Button(self.master, text="登录", command=self.login)
self.login_button.grid(row=3, column=1, padx=10, pady=10)
def generate_captcha(self):
self.captcha = ""
for i in range(4):
self.captcha += str(random.randint(0, 9))
messagebox.showinfo("验证码", self.captcha)
def login(self):
if self.username_entry.get() == "admin" and self.password_entry.get() == "admin" and self.captcha_entry.get() == self.captcha:
messagebox.showinfo("登录", "登录成功")
else:
messagebox.showerror("登录", "登录失败")
root = Tk()
app = Login(root)
root.mainloop()
```
运行上述代码将会弹出一个登录界面,其中包括一个账号输入框、一个密码输入框、一个验证码输入框、一个生成验证码的按钮和一个登录按钮。当点击“生成验证码”按钮时,将会在弹出窗口中显示一个四位数字的验证码。当输入正确的账号、密码和验证码并点击“登录”按钮时,将会弹出一个消息框提示“登录成功”,否则将会弹出一个消息框提示“登录失败”。