Advertisement
Guest User

Untitled

a guest
Oct 19th, 2012
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.53 KB | None | 0 0
  1. import wx
  2.  
  3. class Dialog(wx.Dialog):
  4.     def __init__(self, parent):
  5.         wx.Dialog.__init__(self, parent,
  6.                 style = wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER)
  7.         self.sizer = wx.BoxSizer(wx.VERTICAL)
  8.         self.panel = wx.Panel(self)
  9.         self.panelSizer = wx.BoxSizer(wx.VERTICAL)
  10.  
  11.         self.button = wx.Button(self.panel, -1, "Show panel")
  12.         self.button.Bind(wx.EVT_BUTTON, self.onbutton)
  13.         self.panelSizer.Add(self.button, wx.ALIGN_CENTER | wx.TOP, 5)
  14.         self.subPanel = wx.Panel(self.panel, -1, size = (600, 400))
  15.         wx.StaticText(self.subPanel, -1, "Some filler text")
  16.         print "Initial size is",self.subPanel.GetSize()
  17.         self.panelSizer.Add(self.subPanel, 1,
  18.                 wx.EXPAND | wx.ALIGN_CENTER | wx.ALL, 5)
  19.         self.subPanel.Hide()
  20.        
  21.         self.panel.SetSizerAndFit(self.panelSizer)
  22.         self.sizer.Add(self.panel)
  23.         self.SetSizerAndFit(self.sizer)
  24.  
  25.  
  26.     ## User clicked the show/hide scanning experiment button.
  27.     def onbutton(self, event):
  28.         self.subPanel.Show(not self.subPanel.IsShown())
  29.         self.button.SetLabel("%s panel" % ['Show', 'Hide'][self.subPanel.IsShown()])
  30.         print self.subPanel.GetSize(), self.button.GetSize()
  31.         self.panel.SetSizerAndFit(self.panelSizer)
  32.         print self.panel.GetSize(), self.subPanel.GetSize(), self.button.GetSize()
  33.         self.SetSizerAndFit(self.sizer)
  34.  
  35. app = wx.App(redirect = False)
  36. frame = wx.Frame(None)
  37. frame.Show()
  38. Dialog(frame).Show()
  39. app.MainLoop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement