• 大小: 1.08MB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2023-08-28
  • 语言: Python
  • 标签: python  tkinter  SQLite  

资源简介

Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序实现图形化界面。登录界面、用户端和管理员端,链接SQLite 数据库管理用户。

资源截图

代码片段和文件信息

from tkinter import *
import sqlite3
import os
import tkinter.messagebox as messagebox
 
 
class LoginPage:
    “““登录界面“““
    def __init__(self master):
        self.root = master
        self.root.geometry(‘400x200+600+400‘)
        self.root.title(‘学生成绩管理系统‘)
        self.conn = sqlite3.connect(‘data_login.db‘)
        self.username = StringVar()
        self.password = StringVar()
        self.page = frame(self.root)
        self.creattable()
        self.creatapage()

    def creattable(self):
        self.conn.execute(‘‘‘create table IF NOT EXISTS loginuser (
          username varchar(30) NOT NULL PRIMARY KEY 
          password varchar(16) NOT NULL 
          email varchar NOT NULL 
          loginerror int
        );‘‘‘)
      
    def creatapage(self):
        “““界面布局“““
        Label(self.page).grid(row=0)
        Label(self.page text=‘用户名:‘).grid(row=1 stick=W pady=10)
        Entry(self.page textvariable=self.username).grid(row=1 column=1 stick=E)
        Label(self.page text=‘密码:‘).grid(row=2 stick=W pady=10)
        Entry(self.page textvariable=self.password show=‘*‘).grid(row=2 stick=E column=1)
        Button(self.page text=‘登录‘ command=self.login).grid(row=3 stick=W pady=10)
        Button(self.page text=‘注册账号‘ command=self.register).grid(row=3 stick=E column=1)
        self.page.pack()
 
    def login(self):
        “““登录功能“““
        curs = self.conn.cursor()
        query = “select username password loginerror from loginuser where username=‘%s‘“ % self.username.get()
        curs.execute(query)  # 返回一个迭代器
        c = curs.fetchall()  # 接收全部信息
        if len(c) == 0:
            messagebox.showerror(‘登录失败‘ ‘账户不存在‘)
        else:
            us pw lerror = c[0]
            if lerror >= 3:
                messagebox.showwarning(‘登录失败‘ ‘账户已被锁定‘)
            elif us == self.username.get() and pw == self.password.get():
                self.conn.close()
                messagebox.showinfo(‘登录成功‘ ‘欢迎:%s‘ % us)
                print(us)
                print(us[0])
                if us[0] == ‘9‘: 
                    os.system(r‘“C:\Users\12506\Desktop\学生成绩管理系统\Tk_admin_management.py“‘)
                else: 
                    os.system(r‘“C:\Users\12506\Desktop\学生成绩管理系统\Tk_management.py“‘)
            else:
                messagebox.showwarning(‘登录失败‘ ‘密码错误‘)
 
    def register(self):
        “““注册功能跳转“““
        self.conn.close()
        self.page.destroy()
        RegisterPage(self.root)
 
 
class RegisterPage:
    “““注册界面“““
    def __init__(self master=None):
        self.root = master
        self.root.title(‘账号注册‘)
        self.root.geometry(‘400x250‘)
        self.conn = sqlite3.connect(‘data_login.db‘)
        self.username = StringVar()
        self.password0 = StringVar()  # 第一次输入密码
        self.password1 = StringVar()  # 第二次输入密码
        self.email = StringVar()
        self.page = frame(self.root)
       

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       12651  2020-06-12 16:18  学生成绩管理系统\Tk_admin_management.py
     文件       11056  2019-12-30 20:05  学生成绩管理系统\Tk_management.py
     文件       92443  2019-11-29 20:13  学生成绩管理系统\background.gif
     文件       12288  2020-06-12 16:04  学生成绩管理系统\data_login.db
     文件        5429  2020-06-12 16:15  学生成绩管理系统\login.py
     文件     1063848  2019-12-29 19:08  学生成绩管理系统\sug.gif
     文件       12288  2020-06-12 16:08  学生成绩管理系统\user.db
     目录           0  2020-06-12 16:19  学生成绩管理系统\

评论

共有 条评论