本文实例为大家分享了Python实现GUI学生信息管理系统的具体代码,供大家参考,具体内容如下
<强>项目环境:,强>
,,,,,,,,,,,,,,,,,操作系统:RedHat6.3
,,,,,,,,,,,,,,,,自由:Pygtk
,,,,,,,,,,,,,,,,语言:Python
,,,,,,,,,,,,,,,,该程序是作为Glade3
<强>项目简述:
强>
①计用户的登录窗口,功能主窗口
②通过Gtk。Builder初始化,载入界面
③在Mysql。py文件中实现Python操作数据库。
④在stuManager。py中实现学生信息的查询,删除,修改,终端登录,图形统计等功能
⑤在空地中定义函数触发信号,实现功能的连接。
项目测试:
①登录窗口
②主窗口
③删除信息
④修改信息
⑤登录终端
⑥学生成绩
⑦图形统计(没做好)
⑧查找信息
<强>部分代码:强>
Terminal.py
# - * -编码utf - 8=- * # !/usr/bin/python ##################################################################### # #文件名:terminal.py ## # #版权(2014.6 C) # #作者:TangMeiHao@760209035@qq.com ## # #描述:python + pygtk (gtk)实现学生信息管理系统 ## ###################################################################### 进口静脉血栓栓塞 进口gtk 类MyTerm (): def __init__(自我): ”““初始化一个学期对象“”“ self.terminal=vte.Terminal () self.terminal。连接(“child-exited”,λ术语:self.vte_exit ()) self.terminal.fork_command () self.terminal.set_size (10、20) def vte_exit(自我): ”“当终端退出时,直接重新产生一个终端,并明确初始化”“ self.terminal.fork_command () self.terminal.feed_child (“\ n”) def vte_message(自我): 通过 >之前Stu_Sys.py
# !/usr/bin/python # - * -编码:utf - 8 - * ###################################################################### # #文件名:Stu_Sys.py # # # #版权(2014.6 C) # #作者:TangMeiHao@760209035@qq.com ## # #描述:python + pygtk (gtk)实现学生信息管理系统 ## ###################################################################### 进口gtk 进口gtk.glade 从终端导入* 进口MySQLdb #系统类 类系统: #定义数据库的变量 主机=' localhost ' 用户=案? passwd=' aixocm ' db=? 端口=3306 charset=' use utf8 ' def __init__(自我): #定义所使用的空地文件 自我。glade_file=" Student.glade " 自我。空地=gtk.Builder () self.glade.add_from_file (self.glade_file) self.glade.connect_signals(自我) self.glade.get_object (window1) .set_size_request (800500) self.glade.get_object (window1) .set_position (gtk.WIN_POS_CENTER) #从xml文件中读取数据,并链接必要的信号 在self.glade.get_objects部件(): 如果issubclass(类型(小部件),gtk.Buildable): name=gtk.Buildable.get_name(小部件) setattr(自我、名称、部件) #创建一个终端的实例,并且添加到登录管理的标签页中 self.myterm=MyTerm () self.glade.get_object阀门(“vbox2”) (self.myterm.terminal) #登录窗口 self.dialog3.run () self.dialog3.set_size_request (300260) self.dialog3.set_position (gtk.WIN_POS_CENTER) #登录窗口登录,验证管理员用户,密码。 def on_login_click(自我、部件、数据=https://www.yisu.com/zixun/None): 试一试: 康涅狄格州=MySQLdb.connect(主机=system.host用户=system.user passwd=system.passwd, db=system.db端口=system.port charset=system.charset) 坏蛋=conn.cursor () manager_name=坏蛋。执行(“从经理选择manager_name”) name=cur.fetchmany (1) manager_passwd=坏蛋。执行(“从经理选择manager_passwd”) text16=self.entry16.get_text () text17=self.entry17.get_text () 如果text16 !=名称: #验证成功,关闭登录窗口 self.dialog3.destroy () #显示窗口 self.glade.get_object (“window1”) .show_all () 其他: #提示框 login_waring='亲爱的管理员,你登录的用户或密码的误 self.dialog1buffer=self.textview3.get_buffer () self.dialog1buffer.set_text (str (login_waring)) self.dialog1.set_size_request (300260) self.dialog1.set_position (gtk.WIN_POS_CENTER) self.dialog1.run () 除了MySQLdb.Error, e: 打印“Mysql错误% d: % s”% (e。args [0], e.args [1]) ...........Python实现GUI学生信息管理系统