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 相关文章推荐
Python中利用原始套接字进行网络编程的示例
May 04 Python
对于Python装饰器使用的一些建议
Jun 03 Python
Python打印斐波拉契数列实例
Jul 07 Python
Django自定义分页与bootstrap分页结合
Feb 22 Python
Python实现针对中文排序的方法
May 09 Python
对pandas的dataframe绘图并保存的实现方法
Aug 05 Python
Python中单、双下划线的区别总结
Dec 01 Python
Python将字符串常量转化为变量方法总结
Mar 17 Python
Python button选取本地图片并显示的实例
Jun 13 Python
用Python从0开始实现一个中文拼音输入法的思路详解
Jul 20 Python
Python3爬虫关于识别点触点选验证码的实例讲解
Jul 30 Python
Python截图并保存的具体实例
Jan 14 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
让你成为更出色的PHP开发者的10个技巧
2011/02/25 PHP
php使用qr生成二维码的示例分享
2014/01/20 PHP
Flash对联广告的关闭按钮讨论
2007/01/30 Javascript
一个加载js文件的小脚本
2007/06/28 Javascript
Javascript结合css实现网页换肤功能
2009/11/02 Javascript
理清apply(),call()的区别和关系
2011/08/14 Javascript
ASP.NET jQuery 实例17 通过使用jQuery validation插件校验ListBox
2012/02/03 Javascript
JS小游戏之极速快跑源码详解
2014/09/25 Javascript
基于jquery实现的仿优酷图片轮播特效代码
2016/01/13 Javascript
详解JavaScript实现设计模式中的适配器模式的方法
2016/05/18 Javascript
基于Phantomjs生成PDF的实现方法
2016/11/07 Javascript
深入理解Vue官方文档梳理之全局API
2017/11/22 Javascript
浅谈Vue.js组件(二)
2019/04/09 Javascript
vue指令做滚动加载和监听等
2019/05/26 Javascript
Vue多环境代理配置方法思路详解
2019/06/21 Javascript
js使用文档就绪函数动态改变页面内容示例【innerHTML、innerText】
2019/11/07 Javascript
vue 手机物理监听键+退出提示代码
2020/09/09 Javascript
[43:41]OG vs Newbee 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
Python实现Const详解
2015/01/27 Python
使用Python内置的模块与函数进行不同进制的数的转换
2016/03/12 Python
windows 下python+numpy安装实用教程
2017/12/23 Python
Python实现读取及写入csv文件的方法示例
2018/01/12 Python
python2.7读取文件夹下所有文件名称及内容的方法
2018/02/24 Python
Python网络编程之TCP套接字简单用法示例
2018/04/09 Python
python Web flask 视图内容和模板实现代码
2019/08/23 Python
Python操作Excel工作簿的示例代码(\*.xlsx)
2020/03/23 Python
pytorch 查看cuda 版本方式
2020/06/23 Python
Python 的 __str__ 和 __repr__ 方法对比
2020/09/02 Python
python爬虫今日热榜数据到txt文件的源码
2021/02/23 Python
使用HTML5做个画图板的方法介绍
2013/05/03 HTML / CSS
伦敦一家非常流行的时尚精品店:Oxygen Boutique
2017/01/15 全球购物
财务工作者先进事迹材料
2014/01/17 职场文书
使用jpa之动态插入与修改(重写save)
2021/11/23 Java/Android
浅析Python OpenCV三种滤镜效果
2022/04/11 Python
Python之matplotlib绘制折线图
2022/04/13 Python
td 内容自动换行 table表格td设置宽度后文字太多自动换行
2022/12/24 HTML / CSS