12.11

MIS系统界面

class AdminPage:
def init(self, parent_window):
parent_window.destroy() # 销毁主界面

    self.window = tk.Tk()  # 初始框的声明
    self.window.title('管理员登陆页面')
    self.window.geometry('500x500')  # 这里的乘是小x
    self.window.update_idletasks()  # 更新窗口的大小和位置信息
    screen_width = self.window.winfo_screenwidth()  # 获取屏幕宽度
    screen_height = self.window.winfo_screenheight()  # 获取屏幕高度
    window_width = self.window.winfo_width()  # 获取窗口宽度
    window_height = self.window.winfo_height()  # 获取窗口高度
    x = (screen_width - window_width) // 2  # 计算窗口左上角 x 坐标
    y = (screen_height - window_height) // 2  # 计算窗口左上角 y 坐标
    self.window.geometry("+{}+{}".format(x, y))  # 设置窗口位置

    label = tk.Label(self.window, text='管理员登陆', bg='green', font=('Verdana', 20), width=30, height=2)
    label.pack()

    Label(self.window, text='管理员账号:', font=tkFont.Font(size=14)).pack(pady=25)
    self.admin_username = tk.Entry(self.window, width=30, font=tkFont.Font(size=14), bg='Ivory')
    self.admin_username.pack()

    Label(self.window, text='管理员密码:', font=tkFont.Font(size=14)).pack(pady=25)
    self.admin_pass = tk.Entry(self.window, width=30, font=tkFont.Font(size=14), bg='Ivory', show='*')
    self.admin_pass.pack()

    Button(self.window, text="登陆", width=8, font=tkFont.Font(size=12), command=self.login).pack(pady=40)
    Button(self.window, text="返回首页", width=8, font=tkFont.Font(size=12), command=self.back).pack()

    self.window.protocol("WM_DELETE_WINDOW", self.back)  # 捕捉右上角关闭点击
    self.window.mainloop()  # 进入消息循环

def login(self):
    print(str(self.admin_username.get()))
    print(str(self.admin_pass.get()))
    admin_pass = None

    # 数据库操作 查询管理员表
    db = pymysql.connect(
        host='localhost',
        user='root',
        password='123456',
        charset='utf8',
        database='student'
    ) # 打开数据库连接
    cursor = db.cursor()  # 使用cursor()方法获取操作游标
    sql = "SELECT * FROM admin_login_k WHERE admin_id = '%s'" % (self.admin_username.get())  # SQL 查询语句
    try:
        # 执行SQL语句
        cursor.execute(sql)
        # 获取所有记录列表
        results = cursor.fetchall()
        for row in results:
            admin_id = row[0]
            admin_pass = row[1]
            # 打印结果
            print("admin_id=%s,admin_pass=%s" % (admin_id, admin_pass))
    except:
        print("Error: unable to fecth data")
        messagebox.showinfo('警告!', '用户名或密码不正确!')
    db.close()  # 关闭数据库连接

    print("正在登陆管理员管理界面")
    print("self", self.admin_pass)
    print("local", admin_pass)

    if self.admin_pass.get() == admin_pass:
        AdminManage(self.window)  # 进入管理员操作界面
    else:
        messagebox.showinfo('警告!', '用户名或密码不正确!')

def back(self):
    StartPage(self.window)  # 显示主窗口 销毁本窗口
posted @   奉禾  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
点击右上角即可分享
微信分享提示
主题色彩