使用frame方式实现的简单注册框
来源:互联网 发布:走心机用什么软件编程 编辑:程序博客网 时间:2024/05/21 17:18
此处实现的注册框异常处理仅加入了判空操作,并将录入的信息存储到xml文件的一个操作
class Reg(wx.Frame): def __init__(self): wx.Frame.__init__(self,None,-1,'reg',size=(300,200)) panel=wx.Panel(self,-1) #注册界面控件分布 self.nameLable=wx.StaticText(panel,-1,"name:",pos=(20,20)) self.nameText=wx.TextCtrl(panel,-1,size=(175,-1),pos=(70,20)) self.classLable=wx.StaticText(panel,-1,"class:",pos=(20,60)) self.classText=wx.TextCtrl(panel,-1,size=(175,-1),pos=(70,60)) self.snLable=wx.StaticText(panel,-1,"sn:",pos=(20,100)) self.snText=wx.TextCtrl(panel,-1,size=(175,-1),pos=(70,100)) #确定注册 okey=wx.Button(panel,-1,u"确定",pos=(20,130)) self.Bind(wx.EVT_BUTTON,self.Change_win,okey) #取消注册 cancel=wx.Button(panel,-1,u"取消",pos=(180,130)) self.Bind(wx.EVT_BUTTON,self.OnCloseMe,cancel) def Change_win(self,event): #获取文本框中值 nameValue=self.nameText.GetValue() classValue=self.classText.GetValue() snValue=self.snText.GetValue() #判空检查 if len(nameValue)==0: wx.MessageBox(u"name不能为空","Error") self.nameText.SetBackgroundColour("pink") self.nameText.SetFocus()#设置这个窗口的焦点,允许它接收键盘输入 self.nameText.Refresh() return False elif len(classValue)==0: wx.MessageBox(u"class不能为空","Error") self.classText.SetBackgroundColour("pink") self.classText.SetFocus() self.classText.Refresh() return False elif len(snValue)==0: wx.MessageBox(u"sn不能为空","Error") self.snText.SetBackgroundColour("pink") self.snText.SetFocus() self.snText.Refresh() return False else: nameValue=nameValue.encode("utf8") classValue=classValue.encode("utf8") snValue=snValue.encode("utf8") #将信息存储到xml文件中 Create_stu_xml(nameValue,classValue,snValue) Exam_Choose().Show(True) self.Destroy() def Create_stu_xml(self,name,classValue,sn): try: f=open("student.xml","w") try: doc=minidom.Document() infoNode=doc.createElement("info") doc.appendChild(infoNode) nameNode=doc.createElement("name") infoNode.appendChild(nameNode) nameTextNode = doc.createTextNode(name) nameNode.appendChild(nameTextNode) classNode=doc.createElement("class") infoNode.appendChild(classNode) classTextNode = doc.createTextNode(classValue) classNode.appendChild(classTextNode) snNode=doc.createElement("sn") infoNode.appendChild(snNode) snTextNode = doc.createTextNode(sn) snNode.appendChild(snTextNode) doc.writexml(f,'\n',' ',' ',"utf-8") except: trackback.print_exc() finally: f.close() except Exception: print "write failed" def OnCloseMe(self,event): self.Close(True)
- 使用frame方式实现的简单注册框
- 使用js实现简单的注册验证
- 使用JavaScript实现访问本站点任何页面都加载Frame的一种实现方式
- 利用frame实现简单的导航功能
- 简单的帧frameset、frame的使用
- 注册页面基本控件及frame与frameset的使用
- Frame和IFrame的简单使用
- frame简单实现导航
- 注册程序的简单实现
- 03-一个简单的注册页面---使用线性布局方式编写
- C#下一机一码注册方式的实现
- 一机一码注册方式的实现(C#)
- Android简单逐帧动画Frame的实现
- UIView的frame,bounds,tramsform的简单使用
- frame,center,bounds,transform的使用简单的动画执行
- exosip注册/认证的简单实现方法
- 登录、注册中校验码的简单实现
- exosip注册/认证的简单实现方法
- 善用Google
- mini2440 qt4 移植转)
- [C/C++] memcmp(char*, char*, len) 函数的用法
- meta标签各种取值效果
- VS2008编译环境下重载打开文件
- 使用frame方式实现的简单注册框
- 测试生活的一些自我感悟
- zblog如何定时发布文章
- 第2章 C# 3.0程序设计基础
- silverlight telerik RadGridView 列头显示其他控件
- iOS应用 3D 量角器(3D Protractor)荣登 App Store 中国区工具新品推荐第一位
- 如何从Eclipse导入github上的项目源码
- keySet() 与 entrySet()
- flex4中Datefield的中文格式化