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基础教程之元组操作使用详解
Mar 25 Python
python实现k-means聚类算法
Feb 23 Python
将tensorflow的ckpt模型存储为npy的实例
Jul 09 Python
python traceback捕获并打印异常的方法
Aug 31 Python
Python3.5装饰器典型案例分析
Apr 30 Python
Python 实现大整数乘法算法的示例代码
Sep 17 Python
python网络爬虫 Scrapy中selenium用法详解
Sep 28 Python
Python编译成.so文件进行加密后调用的实现
Dec 23 Python
pytorch实现Tensor变量之间的转换
Feb 17 Python
Python如何使用内置库matplotlib绘制折线图
Feb 24 Python
Python ATM功能实现代码实例
Mar 19 Python
序列化Python对象的方法
Aug 01 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读取mysql乱码,用set names XXX解决的原理分享
2011/12/29 PHP
PHP读取文件内容后清空文件示例代码
2014/03/18 PHP
微信公众平台开发实现2048游戏的方法
2015/04/15 PHP
浅谈php中fopen不能创建中文文件名文件的问题
2017/02/06 PHP
提高Laravel应用性能方法详解
2019/06/24 PHP
为JavaScript类型增加方法的实现代码(增加功能)
2011/12/29 Javascript
基于jQuery实现下拉收缩(展开与折叠)特效
2012/12/25 Javascript
jQuery-serialize()输出序列化form表单值的方法
2012/12/26 Javascript
优化Jquery,提升网页加载速度
2013/11/14 Javascript
深入理解Javascript中this的作用域
2014/08/12 Javascript
jQuery实时显示鼠标指针位置和键盘ASCII码
2016/03/28 Javascript
jQuery表单事件实例代码分享
2016/08/18 Javascript
微信开发 消息推送实现代码
2016/10/21 Javascript
Javascript中for循环语句的几种写法总结对比
2017/01/23 Javascript
html5+canvas实现支持触屏的签名插件教程
2017/05/08 Javascript
ES6新特性:使用export和import实现模块化详解
2017/07/31 Javascript
vue+高德地图写地图选址组件的方法
2019/05/18 Javascript
微信小程序npm引入vant-weapp的踩坑记录
2019/08/01 Javascript
ant-design-vue 时间选择器赋值默认时间的操作
2020/10/27 Javascript
详解在Python程序中使用Cookie的教程
2015/04/30 Python
Python中常用操作字符串的函数与方法总结
2016/02/04 Python
详解Python判定IP地址合法性的三种方法
2018/03/06 Python
详解基于django实现的webssh简单例子
2018/07/17 Python
在python里从协程返回一个值的示例
2019/02/19 Python
Python中sys模块功能与用法实例详解
2020/02/26 Python
python 批量下载bilibili视频的gui程序
2020/11/20 Python
CSS实现进度条和订单进度条的示例
2020/11/05 HTML / CSS
信访工作者先进事迹
2014/01/17 职场文书
投标授权委托书范文
2014/08/02 职场文书
2014年数学教研组工作总结
2014/12/06 职场文书
2015年银行柜员工作总结报告
2015/04/01 职场文书
芙蓉镇观后感
2015/06/10 职场文书
毕业生入职感言
2015/07/31 职场文书
2016十一国庆节慰问信
2015/12/01 职场文书
企业内部管理控制:采购授权审批制度范本
2020/01/19 职场文书
JavaWeb 入门篇(3)ServletContext 详解 具体应用
2021/07/16 Java/Android