hpareek

Untitled

Jun 27th, 2017
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.39 KB | None | 0 0
  1.     def OnAddNew(self, event):
  2.          app = wx.App()
  3.          class MyFrame(wx.Frame):
  4.              def __init__(self, parent):
  5.          wx.Frame.__init__(self, parent, -1, "Dialog Test",size=(500,400))
  6.          self.panel = wx.Panel(self)
  7.          sizer = wx.BoxSizer(wx.VERTICAL)
  8.          self.log = wx.TextCtrl(self.panel, wx.ID_ANY, size=(400,300),style = wx.TE_MULTILINE|wx.TE_READONLY|wx.VSCROLL)
  9.          self.button = wx.Button(self.panel, label="Click me")
  10.          sizer.Add(self.log, 0, wx.EXPAND | wx.ALL, 10)
  11.          sizer.Add(self.button, 0, wx.EXPAND | wx.ALL, 10)
  12.          self.panel.SetSizer(sizer)
  13.          self.Bind(wx.EVT_BUTTON, self.OnButton)
  14.          
  15.          def OnButton(self,event):
  16.               dlg = GetData(parent = self.panel)
  17.           dlg.ShowModal()
  18.           if dlg.result_name:
  19.               self.log.AppendText("Name: "+dlg.result_name+"\n")
  20.               self.log.AppendText("Surname: "+dlg.result_surname+"\n")
  21.               self.log.AppendText("Nickname: "+dlg.result_nickname+"\n")
  22.           else:
  23.               self.log.AppendText("No Input found\n")
  24.           dlg.Destroy()      
  25.  
  26.          class GetData(wx.Dialog):
  27.               def __init__(self, parent):
  28.                   wx.Dialog.__init__(self, parent, wx.ID_ANY, "Name Input", size= (650,220))
  29.               self.panel = wx.Panel(self,wx.ID_ANY)
  30.               self.lblname = wx.StaticText(self.panel, label="Name", pos=(20,20))
  31.           self.name = wx.TextCtrl(self.panel, value="", pos=(110,20), size=(500,-1))
  32.           self.lblsur = wx.StaticText(self.panel, label="Surname", pos=(20,60))
  33.           self.surname = wx.TextCtrl(self.panel, value="", pos=(110,60), size=(500,-1))
  34.           self.lblnick = wx.StaticText(self.panel, label="Nickname", pos=(20,100))
  35.           self.nickname = wx.TextCtrl(self.panel, value="", pos=(110,100), size=(500,-1))
  36.           self.saveButton =wx.Button(self.panel, label="Save", pos=(110,160))
  37.           self.closeButton =wx.Button(self.panel, label="Cancel", pos=(210,160))
  38.           self.saveButton.Bind(wx.EVT_BUTTON, self.SaveConnString)
  39.           self.closeButton.Bind(wx.EVT_BUTTON, self.OnQuit)
  40.           self.Bind(wx.EVT_CLOSE, self.OnQuit)
  41.           self.Show()
  42.          
  43.           def OnQuit(self, event)
  44.                self.result_name = None
  45.                    self.Destroy()
  46.                  
  47.               def SaveConnString(self, event):
  48.               self.result_name = self.name.GetValue()
  49.               self.result_surname = self.surname.GetValue()
  50.               self.result_nickname = self.nickname.GetValue()
  51.               self.Destroy()
Add Comment
Please, Sign In to add comment