刚开始学python,不足请多包涵。下面是运行的一些截图。
教师登录界面
学生登录界面:
from tkinter import*
import tkinter.font
import tkinter.messagebox
from tkinter import ttk
root = tkinter.Tk()
root.title('用户登录注册界面')
#定义窗口大小
root['height'] = 300
root['width'] = 380
#在窗体上创建标签
labelname = tkinter.Label(root, text='用户名:', justify=tkinter.RIGHT, anchor='e', width=80)
labelname.place(x=40, y=20, width=80, height=20)
#创建字符串变量和文本框组件,同时设置关联的变量
varname = tkinter.StringVar(root, value='')
entryname = tkinter.Entry(root, width=80, textvariable=varname)
entryname.place(x=130, y=20, width=150, height=20)
labelpwd = tkinter.Label(root, text='密码:', justify=tkinter.RIGHT, anchor='e', width=80)
labelpwd.place(x=40, y=60, width=80, height=20)
varpwd = tkinter.StringVar(root, value='')
entrypwd = tkinter.Entry(root, width=80, textvariable=varpwd)
entrypwd.place(x=130, y=60, width=150, height=20)
#登录人员选择
labelpeople = tkinter.Label(root, text='登录人员:', justify=tkinter.RIGHT, anchor='e', width=80)
labelpeople.place(x=40, y=100, width=80, height=20)
var = tkinter.StringVar()
combobox = tkinter.ttk.Combobox(root, textvariable=var, width=80)
combobox['value'] = ('学生', '教师')
combobox.current(0)
combobox.place(x=130, y=100, width=150, height=20)
#尝试自动填写用户名和密码
try:
with open('filename.txt') as fp:
n, p, v = fp.read().strip().split(',')
varname.set(n)
varpwd.set(p)
combobox.current(v)
except:
pass
#复选框rememberme
rememberme = tkinter.IntVar(root, value=1)
# 选中时变量值为1,未选中时变量值为0
checkremember = tkinter.Checkbutton(root, text='记住密码', variable=rememberme, onvalue=1, offvalue=0)
checkremember.place(x=130, y=160, width=80, height=20)
#注册按钮事件响应函数
def login():
k = {}
name = entryname.get()
pwd = entrypwd.get()
vv = combobox.current()
k[name] = [pwd, vv]
try:
a = ''
with open('zhuce.txt', 'r') as f:
for i in f:
a = a + i
except:
pass
if name == '' or pwd == '':
tkinter.messagebox.showerror('警告', message='用户名和密码不能为空!')
elif name in a:
tkinter.messagebox.showerror('警告', message='用户名已存在!')
else:
with open('zhuce.txt', 'a+') as use:
use.write(str(k))
tkinter.messagebox.showinfo(title='恭喜', message='注册成功!')
#创建注册按钮组件,同时设置注册事件处理函数
buttonlogin = tkinter.Button(root, text='注册',