毕设要求用Python做学生信息管理系统?不慌,升级版这篇文章就够了~

导语

还有最后几个月就毕业了,大学三年咳咳咳也许是四年,一切都结束了哈!最后的这段时间大家都在做什么呢?

回答当然是:“赶毕设了“。

毕业季,这是大学三年最忙的日子,路上行人欲断魂,最怕的就是你问我”兄弟,毕设做的什么题目”“毕设借鉴一下“你这真 就借鉴一下也行,我就怕你毕设连标点符号都一摸一样,结果两兄弟一起挂了..............

今天的话小编带哪些忙碌需要速成很急的需要毕设的小伙伴儿——做一个万能的GUI版本的学生信息管理系统。

这系统可是真大众化,每年的话估计选择这个毕设做标题的就一大堆,要不是标题一个班不能重样儿,那的对半分。

正文

项目要求(1):

使用pycharm通过Python的界面包对学生表操作增删改查操作。

附:

# 添加
def insert():
    # 获取输入框的值
    snameValue=snameEntry.get()
    ssexValue=ssexEntry.get()
    sageValue=sageEntry.get()
    if(snameValue=="" or ssexValue=="" or sageValue==""):
        messagebox.showwarning("警告","学生的姓名、性别、年龄不能为空!")
    else:
        print("添加中......")
        sageValue = int(sageEntry.get())
        stu.setSage(sageValue)
        stu.setSname(snameValue)
        stu.setSsex(ssexValue)
        bd.addStudent(stu)
        # 添加之后重新加载表格数据
        fresh()
        clearEntry()
        print("添加成功!")
# 删除
def delete():
    sidValue=sidEntry.get()
    if(sidValue!=""):
        print("删除中......")
        sidValue=int(sidEntry.get())
        stu.setSid(sidValue)
        bd.delStudent(stu)
        # 删除之后刷新数据
        fresh()
        # 清空输入框
        clearEntry()
        print("删除成功!")
    elif(sidValue==""):
        # 用户没有选择任何学生进行删除
        messagebox.showwarning("警告","请选择需要删除的学生")
# 修改
def update():
    sidValue=sidEntry.get()
    if(sidValue!=""):
        print("修改中......")
        sidValue=int(sidEntry.get())
        snameValue = snameEntry.get()
        ssexValue = ssexEntry.get()
        sageValue = int(sageEntry.get())

        stu.setSid(sidValue)
        stu.setSname(snameValue)
        stu.setSsex(ssexValue)
        stu.setSage(sageValue)
        bd.updStudent(stu)
        fresh()
        clearEntry()
        print("修改成功!")
    elif(sidValue==""):
        # 用户没有选择任何学生进行修改
        messagebox.showwarning("警告", "请选择需要修改的学生")


# 查询
def select():
    print("查询中......")
    sidValue= sidEntry.get()
    if(sidValue!=""):
        sidValue = int(sidEntry.get())
    snameValue = snameEntry.get()
    ssexValue = ssexEntry.get()
    sageValue=sageEntry.get()
    if (sageValue!= ""):
        sageValue = int(sageEntry.get())

    stu.setSid(sidValue)
    stu.setSname(snameValue)
    stu.setSsex(ssexValue)
    stu.setSage(sageValue)

    for i in treeView.get_children():
        treeView.delete(i)
    for i in bd.selectStu(stu):
        treeView.insert("", 0, values=(i[0], i[1], i[2], i[3]))
    print("查询成功......")

做一个GUI界面(2):

# 实例化一个新窗口
tk=Tk()

# 设置窗口大小
tk.geometry("600x380")

# 设置窗口的标题
tk.title("学生管理系统\n@zs")

# 在窗口中添加标签
label=Label(tk,text="欢迎使用学生管理系统!",bg="#0078D7",fg="black",font=("宋体",18))

# 标签出现在窗口的位置
label.pack(side=TOP,fill="x")

#在窗口中添加数据展示
# 设置show属性为 headings 即可隐藏首列
treeView=ttk.Treeview(tk,show="headings",column=("sid","sname","ssex","sage"))

#数据列表设置属性
treeView.column("sid",width=150,anchor="center")
treeView.column("sname",width=150,anchor="center")
treeView.column("ssex",width=150,anchor="center")
treeView.column("sage",width=150,anchor="center")


#设置表头
treeView.heading("sid",text="编号")
treeView.heading("sname",text="姓名")
treeView.heading("ssex",text="性别")
treeView.heading("sage",text="年龄")

# 初始化加载表格的数据
fresh()

#实例化底部大容器
bottomFrame=Frame(tk)

#实例化底部大容器中的左右两个容器
leftFrame=Frame(bottomFrame)
rightFrame=Frame(bottomFrame)

# 左边容器
sidLadel=Label(leftFrame,text="编号:")
sidEntry=Entry(leftFrame)

snameLadel=Label(leftFrame,text="姓名:")
snameEntry=Entry(leftFrame)

ssexLadel=Label(leftFrame,text="性别:")
ssexEntry=Entry(leftFrame)

sageLadel=Label(leftFrame,text="年龄:")
sageEntry=Entry(leftFrame)

sidLadel.grid(row=0,column=0)
sidEntry.grid(row=0,column=1)

snameLadel.grid(row=0,column=2)
snameEntry.grid(row=0,column=3)

ssexLadel.grid(row=1,column=0)
ssexEntry.grid(row=1,column=1)

sageLadel.grid(row=1,column=2)
sageEntry.grid(row=1,column=3)

# 右边容器
insertBtn=Button(rightFrame,text="添加",command=insert)
deleteBtn=Button(rightFrame,text="删除",command=delete)
updateBtn=Button(rightFrame,text="修改",command=update)
selectBtn=Button(rightFrame,text="查询",command=select)
insertBtn.grid(row=0,column=0)
deleteBtn.grid(row=0,column=1)
updateBtn.grid(row=1,column=0)
selectBtn.grid(row=1,column=1)

# 底部的【一键清空】按钮
clearButton=Button(text="一键清空",command=clearEntry)

#给TreeView添加点击事件
treeView.bind("<<TreeviewSelect>>",treeViewSelect)

# 显示表的信息
treeView.pack()

# 显示左右容器
leftFrame.pack(side=LEFT)
rightFrame.pack(side=RIGHT)

# 显示底部大容器
bottomFrame.pack()

# 显示底部的【一键清空】按钮
clearButton.pack()

# 获取电脑屏幕的宽度和高度
winWidth=tk.winfo_screenwidth()
winHeight=tk.winfo_screenheight()

# 窗口的宽度
tkWidth = 600
tkHeight = 380

# 居中的px
x = (winWidth-tkWidth) / 2
y = (winHeight-tkHeight) / 2

tk.geometry("%dx%d+%d+%d" %(tkWidth,tkHeight,x,y))
# 进入消息循环
tk.mainloop()

效果图:

​​

​​​​

总结

好了~还是学生的话这篇文章可以先收藏着~毕业的时候翻出来哈哈哈哈~

很多方面都可以优化的更好~这篇文章项目大家都知道很简单2333~不知道写啥子了。

​🎊🎊源码基地:关注小编获取哦~💝记得三连吖

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

顾木子吖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值