写以下代码用户界面大小为200*160像素,居中显示,如下所示: 用户类型包括学生用户和教师用户,缺省为学生用户。 “确定”按钮功能:如果用户名为空,则打印"用户名不可为空!";如果密码为空,则打印"密码不可为空!";如果是学生用户,用户名和密码都是s,登陆成功则打印"学生用户登陆成功";如果是教师用户,用户名和密码都是t;登陆成功则打印"教师用户登陆成功";如果登陆不成功,则打印"用户名不存在或者密码不正确!"。 “取消”按钮功能:将用户名和密码的输入框清空。 “退出”按钮功能:退出程序 ,窗口事件不处理,即单击关闭按钮不能退出程序。
时间: 2024-03-26 11:36:05 浏览: 24
以下是一个简单的Python代码实现:
```python
import tkinter as tk
class LoginGUI:
def __init__(self):
self.root = tk.Tk()
self.root.geometry("200x160")
self.root.resizable(False, False)
self.root.title("登录")
# 居中显示
self.screenwidth = self.root.winfo_screenwidth()
self.screenheight = self.root.winfo_screenheight()
self.width = 200
self.height = 160
self.x = (self.screenwidth - self.width) // 2
self.y = (self.screenheight - self.height) // 2
self.root.geometry("%dx%d+%d+%d" % (self.width, self.height, self.x, self.y))
self.user_type = tk.StringVar(value="学生用户")
self.username = tk.StringVar()
self.password = tk.StringVar()
tk.Label(self.root, text="用户类型:").grid(row=0, column=0, pady=5)
tk.Radiobutton(self.root, text="学生用户", variable=self.user_type, value="学生用户").grid(row=0, column=1)
tk.Radiobutton(self.root, text="教师用户", variable=self.user_type, value="教师用户").grid(row=0, column=2)
tk.Label(self.root, text="用户名:").grid(row=1, column=0, pady=5)
tk.Entry(self.root, textvariable=self.username).grid(row=1, column=1, columnspan=2)
tk.Label(self.root, text="密码:").grid(row=2, column=0, pady=5)
tk.Entry(self.root, textvariable=self.password, show="*").grid(row=2, column=1, columnspan=2)
tk.Button(self.root, text="确定", command=self.login).grid(row=3, column=0, pady=5)
tk.Button(self.root, text="取消", command=self.clear).grid(row=3, column=1, pady=5)
tk.Button(self.root, text="退出", command=self.exit).grid(row=3, column=2, pady=5)
def login(self):
username = self.username.get()
password = self.password.get()
if not username:
print("用户名不可为空!")
elif not password:
print("密码不可为空!")
elif self.user_type.get() == "学生用户" and username == "s" and password == "s":
print("学生用户登陆成功")
elif self.user_type.get() == "教师用户" and username == "t" and password == "t":
print("教师用户登陆成功")
else:
print("用户名不存在或者密码不正确!")
def clear(self):
self.username.set("")
self.password.set("")
def exit(self):
self.root.destroy()
def mainloop(self):
self.root.mainloop()
if __name__ == '__main__':
login_gui = LoginGUI()
login_gui.mainloop()
```
运行代码后,将会得到一个简单的登录界面,用户可以输入用户名和密码,选择用户类型,然后单击“确定”按钮进行登录,单击“取消”按钮清空输入框,单击“退出”按钮退出程序。登录的结果将会在控制台输出。