python Tkinter版学生管理系统

本文实例为大家分享了python Tkinter版学生管理的具体代码,供大家参考,具体内容如下

Tkinter是python自带的UI包,无需下载,只需要导入

tkinter 文档

//http://effbot.org/tkinterbook////

文档是英文版本的,可以翻译!

界面效果如下:

python的pc端界面还是可以的,较为美观!

页面较为粗狂,为经过专业设计!

系统的对象封装,数据连接使用的是原本控制台版本的!

控制台版本的系统,包含对象封装,数据连接

#导入tkinter 包

from tkinter import *

from tkinter import ttk

from com.hc.dao.Connect import *

from com.hc.entity.Student import *

root=Tk()

# 窗口宽高 英文X

root.geometry('600x500')

# 固定窗口

root.resizable(width=False,height=False)

# 窗口标题

root.title('hc king')

# 标签 \ n

Label(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)

上述是系统所需的具体方法!

仍然需要改进!

以上是 python Tkinter版学生管理系统 的全部内容, 来源链接: utcz.com/z/354637.html

回到顶部