python Tkinter版学生管理系统


Posted in Python onFebruary 20, 2019

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

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

tkinter 文档
//http://effbot.org/tkinterbook////
文档是英文版本的,可以翻译!

界面效果如下:

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

python Tkinter版学生管理系统

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

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

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

#导入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 相关文章推荐
windows下python安装paramiko模块和pycrypto模块(简单三步)
Jul 06 Python
python实现员工管理系统
Jan 11 Python
Python获取二维矩阵每列最大值的方法
Apr 03 Python
Python列表推导式与生成器用法分析
Aug 02 Python
解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path
Jun 12 Python
python内存动态分配过程详解
Jul 15 Python
Django使用unittest模块进行单元测试过程解析
Aug 02 Python
Python如何调用外部系统命令
Aug 07 Python
python 表格打印代码实例解析
Oct 12 Python
python使用openCV遍历文件夹里所有视频文件并保存成图片
Jan 14 Python
pytorch使用tensorboardX进行loss可视化实例
Feb 24 Python
python图片灰度化处理的几种方法
Jun 23 Python
啥是佩奇?使用Python自动绘画小猪佩奇的代码实例
Feb 20 #Python
Python实战购物车项目的实现参考
Feb 20 #Python
利用django+wechat-python-sdk 创建微信服务器接入的方法
Feb 20 #Python
python3+pyqt5+itchat微信定时发送消息的方法
Feb 20 #Python
钉钉群自定义机器人消息Python封装的实例
Feb 20 #Python
python3实现zabbix告警推送钉钉的示例
Feb 20 #Python
python实现图书借阅系统
Feb 20 #Python
You might like
根德YB400的电路分析
2021/03/02 无线电
PHP memcache扩展的三种安装方法
2009/04/26 PHP
解析php curl_setopt 函数的相关应用及介绍
2013/06/17 PHP
用js自动判断浏览器分辨率的代码
2007/01/28 Javascript
jsvascript图像处理—(计算机视觉应用)图像金字塔
2013/01/15 Javascript
node.js中的console.assert方法使用说明
2014/12/10 Javascript
jQuery鼠标经过方形图片切换成圆边效果代码分享
2015/08/20 Javascript
基于jquery实现瀑布流布局
2020/06/28 Javascript
JS组件系列之Bootstrap table表格组件神器【终结篇】
2016/05/10 Javascript
js简单实现调整网页字体大小的方法
2016/07/23 Javascript
ionic 自定义弹框效果
2017/06/27 Javascript
vue中计算属性(computed)、methods和watched之间的区别
2017/07/27 Javascript
微信小程序之圆形进度条实现思路
2018/02/22 Javascript
浅谈angularJS2中的界面跳转方法
2018/08/31 Javascript
自定义javascript验证框架示例【附源码下载】
2019/05/31 Javascript
Vue 实现把表单form数据 转化成json格式的数据
2019/10/29 Javascript
JS如何实现动态添加的元素绑定事件
2019/11/12 Javascript
three.js 将图片马赛克化的示例代码
2020/07/31 Javascript
跟老齐学Python之玩转字符串(1)
2014/09/14 Python
python list元素为tuple时的排序方法
2018/04/18 Python
Python系统监控模块psutil功能与经典用法分析
2018/05/24 Python
Python多线程多进程实例对比解析
2020/03/12 Python
DRF框架API版本管理实现方法解析
2020/08/21 Python
HTML5学习笔记之History API
2015/02/26 HTML / CSS
健身场所或家用健身设备:Life Fitness
2017/11/01 全球购物
优纳科技软件测试面试题
2012/05/15 面试题
UNIX文件系统分类
2014/11/11 面试题
介绍一下Ruby的特点
2013/01/20 面试题
幼儿园教师辞职信
2014/01/18 职场文书
商场消防演习方案
2014/02/12 职场文书
公司离职证明标准样本
2014/10/05 职场文书
个人四风问题对照检查材料思想汇报
2014/10/06 职场文书
单身证明范本
2015/06/15 职场文书
军训决心书范文
2015/09/22 职场文书
学生会宣传部竞选稿
2015/11/21 职场文书
Golang 实现获取当前函数名称和文件行号等操作
2021/05/08 Golang