当前位置: 首页 > 编程笔记 >

python Tkinter版学生管理系统

黄飞翮
2023-03-14
本文向大家介绍python Tkinter版学生管理系统,包括了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)

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

仍然需要改进!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍Android版学生管理系统,包括了Android版学生管理系统的使用技巧和注意事项,需要的朋友参考一下 用户可以输入姓名、性别、年龄三个字段,通过点击添加学生按钮,将学生信息展示到开始为空的ScrollView控件中,ScrollView控件只能包裹一个控件,我这里包裹的是LinearLayout。点击保存数据按钮将数据通过XmlSerializer对象将数据保存到sd卡中,当点击

  • 系统功能设计 代码实现 #include<stdio.h> #include<stdlib.h> #include<conio.h> #include<dos.h> #include<string.h> #define LEN sizeof(struct student) #define FORMAT "%-8d%-15s%-12.1lf%-12.1lf%-12.1lf%-12.1lf\n" #d

  • 本文向大家介绍Python学生信息管理系统修改版,包括了Python学生信息管理系统修改版的使用技巧和注意事项,需要的朋友参考一下 在学习之前先要了解sqlite游标的使用方法python使用sqlite3时游标的使用方法 继上篇博客Python实现学生信息管理系统后,我就觉得写的太复杂了,然后又是一通优化、优化、优化; 本次优化主要修改了: 1.使用游标的方法连接、增、删、改、查数据库; 2.一

  • 本文向大家介绍简单实现Java版学生管理系统,包括了简单实现Java版学生管理系统的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Java实现学生管理系统的具体代码,供大家参考,具体内容如下 更多学习资料请关注专题《管理系统开发》。  以上就是本文的全部内容,希望对大家学习Java程序设计有所帮助。

  • 项目分析 在学生成绩管理系统中,我们将实现7大功能,分别是添加记录、显示记录、修改记录、删除记录、查找记录、排序记录以及退出系统。 需求分析 添加记录 这个功能主要是添加学生的信息,当用户在功能菜单中选择数字1时,会进入添加记录模块,提示用户输入学生的学号、姓名、数学成绩、语文成绩。当用户输入完毕后,会提示用户是否继续添加,Y表示继续,N表示返回。需要注意的是,在添加学号时不能重复,如果输入重复的

  • 学生成绩管理系统 案例描述 案例要求模拟开发一个学生成绩管理系统,此系统具有以下功能: (1)添加学生信息,包括学号、姓名、语文、数学成绩; (2)显示学生信息,将所有学生信息打印输出; (3)修改学生信息,可以根据姓名查找到学生,然后可以修改学生姓名、成绩项; (4)删除学生信息,根据学号查找到学生,将其信息删除; (5)查找学生信息,根据学生姓名,将其信息打印输出; (6)按学生总成绩进行从高