GUI程序设计--班级信息收集系
import wx
from python实验2 import classinformation
class MyFrame(wx.Frame):
def __init__(self,parent,id):
wx.Frame.__init__(self,parent,id,title="班级信息收集程序",size=(600,400))
pl = wx.Panel(self)
self.title = wx.StaticText(pl,label="请输入要收集的班级、姓名、学号",pos=(200,20))
self.label_id = wx.StaticText(pl,label="学号:",pos=(50,50))
self.text_id = wx.TextCtrl(pl,pos=(100,50),size=(235,25),style=wx.TE_LEFT)
self.label_bj = wx.StaticText(pl,label="班级:",pos=(50,90))
self.text_bj = wx.TextCtrl(pl, pos=(100, 90), size=(235, 25), style=wx.TE_LEFT)
self.label_xm = wx.StaticText(pl, label="姓名:", pos=(50, 130))
self.text_xm = wx.TextCtrl(pl, pos=(100, 130), size=(235, 25), style=wx.TE_LEFT)
self.bt_bc = wx.Button(pl,label="保存",pos=(100,170))
self.bt_bc.Bind(wx.EVT_BUTTON,self.Baochun)
self.bt_qx = wx.Button(pl,label="取消",pos=(200,170))
self.bt_qx.Bind(wx.EVT_BUTTON, self.Cancel) def Baochun(self,event):
id = self.text_id.GetValue()
bj = self.text_bj.GetValue()
xm = self.text_xm.GetValue()
if id =='' or bj == '' or xm == '':
message = '输入为空!'
else:
classinformation.baochuninformation(id,bj,xm)
message = '保存成功!'
wx.MessageBox(message)
def Cancel(self,event):
self.text_xm.SetValue('')
self.text_bj.SetValue('')
self.text_id.SetValue('')
wx.MessageBox('取消成功!')
if __name__ == '__main__':
app = wx.App()
frame = MyFrame(parent=None,id=-1)
frame.Show()
app.MainLoop()
import wx
from python实验2 import classinformation
class MyFrame(wx.Frame):
def __init__(self,parent,id):
wx.Frame.__init__(self,parent,id,title="班级信息查询程序",size=(600,400))
pl = wx.Panel(self)
self.title = wx.StaticText(pl, label="班级信息查询程序", pos=(200, 20))
self.label_id = wx.StaticText(pl, label="请输入要查询同学的学号:", pos=(100, 70))
self.text_id = wx.TextCtrl(pl, pos=(100, 100), size=(235, 25), style=wx.TE_LEFT)
self.bt_bc = wx.Button(pl, label="查询", pos=(100, 140))
self.bt_bc.Bind(wx.EVT_BUTTON, self.Chaxun)
self.bt_qx = wx.Button(pl, label="取消", pos=(200, 140))
self.bt_qx.Bind(wx.EVT_BUTTON, self.Cancel) def Chaxun(self,event): id = self.text_id.GetValue()
if id =='':
message = '输入为空!'
else:
(a,b,c) = classinformation.chaxuninformation(id)
message = """
该同学姓名为: {:s} 班级为:{:s}
""".format(c,b)
wx.MessageBox(message) pass def Cancel(self, event): self.text_id.SetValue('')
wx.MessageBox('取消成功!') if __name__ == '__main__':
app = wx.App()
frame = MyFrame(parent=None,id=-1)
frame.Show()
app.MainLoop()
import sqlite3 def baochuninformation(a,b,c):
"""
:param a: 学生的学号 (id)
:param b: 班级 (bj)
:param c: 姓名 (xm)
:return:
"""
conn = sqlite3.connect('mrsoft.db')
cursor = conn.cursor()
e = (a,b,c)
cursor.execute('insert into classinformation (id,bj,xm) values (?,?,?)', e)
cursor.close()
conn.commit()
conn.close() def chaxuninformation(a):
'''
:param a: 学号
:return: 返回元组
''' b=()
conn = sqlite3.connect('mrsoft.db')
cursor = conn.cursor()
a=int(a)
cursor.execute('select * from classinformation where id = ?', (a,))
b= cursor.fetchone()
cursor.close()
conn.close()
return b #b是一个元组 if __name__=='__main__':
conn = sqlite3.connect('mrsoft.db')
cursor = conn.cursor()
# create table classinformation (id int(15) primary key, bj varchar (20), xm varchar (4))
a = ('20', '信计1班', '吕莹')
#cursor.execute('insert into classinformation (id,bj,xm) values (?,?,?)', a)
#cursor.execute('delete from classinformation where id = ?', (20,))
cursor.execute('select * from classinformation where id = ?', (20,))
b = cursor.fetchone()
print(b)
cursor.close()
conn.commit()
conn.close()


GUI程序设计--班级信息收集系的更多相关文章
- 最简单的方法是使用标准的 Linux GUI 程序之一: i-nex 收集硬件信息,并且类似于 Windows 下流行的 CPU-Z 的显示。 HardInfo 显示硬件具体信息,甚至包括一组八个的流行的性能基准程序,你可以用它们评估你的系统性能。 KInfoCenter 和 Lshw 也能够显示硬件的详细信息,并且可以从许多软件仓库中获取。
最简单的方法是使用标准的 Linux GUI 程序之一: i-nex 收集硬件信息,并且类似于 Windows 下流行的 CPU-Z 的显示. HardInfo 显示硬件具体信息,甚至包括一组八个的流 ...
- 信息收集->DNS分析->dnsdict6
如何获取域名的IPV4/IPV6地址之dnsdict6的使用 dnsdict6是一个用于获取网站信息的工具.dnsdict6可以扫描网站并显示有多少域或者子域,也可以扫描ipv6/ipv4地址.dns ...
- Kali Linux信息收集工具
http://www.freebuf.com/column/150118.html 可能大部分渗透测试者都想成为网络空间的007,而我个人的目标却是成为Q先生! 看过007系列电影的朋友,应该都还记得 ...
- Kali Linux信息收集工具全集
001:0trace.tcptraceroute.traceroute 描述:进行路径枚举时,传统基于ICMP协议的探测工具经常会受到屏蔽,造成探测结果不够全面的问题.与此相对基于TCP协议的探测,则 ...
- Kali Linux信息收集工具全
可能大部分渗透测试者都想成为网络空间的007,而我个人的目标却是成为Q先生! 看过007系列电影的朋友,应该都还记得那个戏份不多但一直都在的Q先生(由于年级太长目前已经退休).他为007发明了众多神奇 ...
- ATL的GUI程序设计(4)
第四章 对话框和控件 对于Win32 GUI的程序设计来说,其实大部分的情况下我们都不需要自己进行窗口类的设计,而是可以使用Win32中与用户交互的标准方式--对话框(Dialog Box).我们可以 ...
- ATL的GUI程序设计(3)
第三章 ATL的窗口类 CWindowImpl.CWindow.CWinTraits,ATL窗口类的奥秘尽在此三者之中.在本章里,李马将为你详细解说它们的使用方法.另外,本章的内容也可以算是本书的核心 ...
- ATL的GUI程序设计(2)
from:http://blog.titilima.com/atlgui-2.html 第二章 一个最简单窗口程序的转型 我知道,可能会有很多朋友对上一章的"Hello, World!&qu ...
- ATL的GUI程序设计(1)
from:http://blog.titilima.com/atlgui-1.html 第一章 不能免俗的"Hello, World!" 在这一章里,就像所有的入门级教程一样,我也 ...
- 渗透测试之信息收集(Web安全攻防渗透测试实战指南第1章)
收集域名信息 获得对象域名之后,需要收集域名的注册信息,包括该域名的DNS服务器信息和注册人的联系方式等. whois查询 对于中小型站点而言,域名所有人往往就是管理员,因此得到注册人的姓名和邮箱信息 ...
随机推荐
- 【源码】RapidJSON 源码剖析(0.1):调试工具 GDB 的使用
[源码]RapidJSON 源码剖析(0.1):调试工具 GDB 的使用 正式开始源码阅读之前,有必要了解一下源码阅读中用到的调试工具 GDB. GDB(GNU Debugger) 是一种可以运行在多 ...
- java-tocsv
1.依赖 <dependencies> <dependency> <groupId>org.apache.poi</groupId> <artif ...
- centos7 部署 loonflow
a workflow engine base on django 基于django的工作流引擎系统(通过http接口调用,可以作为企业内部统一的工作流引擎,提供诸如权限申请.资源申请.发布申请.请假. ...
- 目标库DML 堵塞(dblink)导致OGG延迟
[[toc]] # 问题概述xx库OGG延迟超过8个小时,但进程处于RUNNING.# 问题原因定位到有人通过A库的DBLINK修改目标库的数据. OGG同步的表, 目标的端也在做修改相同数据,无法保 ...
- APP压力稳定性测试-Monkey
一.Monkey工具简介 1.monkey的来源: Monkey是一个命令行工具,使用安卓调试桥(adb)来运行它,模拟用户:触摸屏幕.滑动Trackball.按键等随机事件流来对设备上的程序进行压力 ...
- Java学习笔记(二)java流程控制
学习笔记2 Java流程控制 这次也是跟着[狂神说Java]Java零基础学习视频通俗易懂继续学习的,持续学习,你我共勉. 一. 用户交互Scanner 1. Scanner对象 之前学的基本语法没有 ...
- k8s网路策略
Network Policy(网络策略) 默认情况下,k8s集群网络是没有任何限制的,Pod可以和任何其他Pod通信,在某些场景下需要做网络控制,减少网络面的攻击,提高安全性,就会用到网络策略(Net ...
- File类-绝对路径 相对路径
绝对路径:通过给定的路径能够直接在我的电脑中找到的文件 相对路径:文件相对于应用程序的路径 结论: 我们在开发中要尽量使用相对路径 File方法只能读取小文件,是一下子全读出来.如果读大文件则使用文件 ...
- linux命令行大量零碎练习习题集-打包未整理
linux命令行大量零碎练习习题集-打包未整理最近看完了一本linux书籍,想着做题来检测和巩固一下,于是打算去买本linux命令集习题去做做.但是没有找到相关的书籍,于是只能在网上随便找找.但是很多 ...
- git 的提交与合并
1,创建远程仓库 不论是用命令行还是码云之类的都可以 2,git clone url 这是将远程仓库库提交到本地 3, git checkout -b dev 创建dev分支并切换到dev ...