python Tkinter版学生管理系统
Python  /  管理员 发布于 7年前   227
本文实例为大家分享了python Tkinter版学生管理的具体代码,供大家参考,具体内容如下
Tkinter是python自带的UI包,无需下载,只需要导入
tkinter 文档
//http://effbot.org/tkinterbook////
文档是英文版本的,可以翻译!
界面效果如下:
python的pc端界面还是可以的,较为美观!
页面较为粗狂,为经过专业设计!
系统的对象封装,数据连接使用的是原本控制台版本的!
控制台版本的系统,包含对象封装,数据连接
#导入tkinter 包from tkinter import *from tkinter import ttkfrom com.hc.dao.Connect import *from com.hc.entity.Student import *root=Tk()# 窗口宽高 英文Xroot.geometry('600x500')# 固定窗口root.resizable(width=False,height=False)# 窗口标题root.title('hc king')# 标签 \ nLabel(root,text='信息管理',bg='white',fg='red',font=('宋体',15)).pack(side=TOP,fill='x')# 数据表格#居中dataTreeview=ttk.Treeview(root,show='headings',column=('sid','sname','sex','sage'))dataTreeview.column('sid',width=150,anchor="center")dataTreeview.column('sname',width=150,anchor="center")dataTreeview.column('sex',width=150,anchor="center")dataTreeview.column('sage',width=150,anchor="center")dataTreeview.heading('sid',text='编号')dataTreeview.heading('sname',text='名称')dataTreeview.heading('sex',text='性别')dataTreeview.heading('sage',text='年龄')bottomFrame=Frame(root)sidLabel=Label(leftFrame,text='编号:')snameLabel=Label(leftFrame,text='名称:')sexLabel=Label(leftFrame,text='性别:')sageLabel=Label(leftFrame,text='年龄:')sidEntry=Entry(leftFrame)snameEntry=Entry(leftFrame)sexEntry=Entry(leftFrame)sageEntry=Entry(leftFrame)sidLabel.grid(row=0,column=0)sidEntry.grid(row=0,column=1)snameLabel.grid(row=0,column=2)snameEntry.grid(row=0,column=3)sexLabel.grid(row=1,column=0)sexEntry.grid(row=1,column=1)sageLabel.grid(row=1,column=2)sageEntry.grid(row=1,column=3)insButton=Button(rightFrame,text="添加",command=insert)insButton.grid(row=0,column=0)delButton=Button(rightFrame,text="删除",command=delete)delButton.grid(row=0,column=1)updButton=Button(rightFrame,text="修改",command=update)updButton.grid(row=1,column=0)selButton=Button(rightFrame,text="查询",command=select)selButton.grid(row=1,column=1)#定位式布局,即坐标dataTreeview.bind('<<TreeviewSelect>>',treeSel)#为dataTreeview绑定事件bottomFrame.pack()#组件显示root.mainloop()#界面运行
上述是系统的界面。
#点击dataTreeview的某一项,就把数据拿到,放进四个输入框内def treeSel(event): item=dataTreeview.selection() itemvalues=dataTreeview.item(item,'values') clearEntry() sidEntry.insert(0,itemvalues[0]) snameEntry.insert(0, itemvalues[1]) sexEntry.insert(0, itemvalues[2]) sageEntry.insert(0, itemvalues[3])#把四个输入框的数据放进对象def update(): student = Student() student.stuId = sidEntry.get() student.stuName = snameEntry.get() student.stuSex = sexEntry.get() student.stuAge = sageEntry.get() DataBase().updUser(student) clearAndall()#删除dataTreeview里面的数据def clear(): clearEntry() for item in dataTreeview.get_children(): dataTreeview.delete(item)def addAll(): for o in DataBase().allUser(): dataTreeview.insert('',0, values=(o[0], o[1], o[2], o[3]))#清空四个输入框def clearEntry(): sidEntry.delete(0, END) snameEntry.delete(0, END) sexEntry.delete(0, END) sageEntry.delete(0, END)
上述是系统所需的具体方法!
仍然需要改进!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号