wxWidgets/wxPython/tests/og.py
Bryan Petty f6bcfd974e merged 2.2 branch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@7748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2000-07-15 19:51:35 +00:00

70 lines
2.1 KiB
Python

from wxPython.wx import *
#from Lib.Gui.PlainWidgets import *
class TestLayoutConstraints(wxPanel):
def __init__(self, parent):
wxPanel.__init__(self, parent, -1)
#
nb = wxNotebook(self, -1)
page = wxPanel(nb, -1)
page.SetBackgroundColour(wxBLUE)
button = wxButton(page, -1, 'press me')
#
nb.AddPage(page, 'testpage')
#
lc = wxLayoutConstraints()
lc.top.PercentOf(parent, wxBottom, 0)
lc.bottom.PercentOf(parent, wxBottom, 100)
lc.left.PercentOf(parent, wxRight, 0)
lc.right.PercentOf(parent, wxRight, 100)
self.SetConstraints(lc)
self.SetAutoLayout(true)
#
lc = wxLayoutConstraints()
lc.top.PercentOf(self, wxBottom, 0)
lc.bottom.PercentOf(self, wxBottom, 100)
lc.left.PercentOf(self, wxRight, 0)
lc.right.PercentOf(self, wxRight, 100)
nb.SetConstraints(lc)
# nb.SetAutoLayout(true)
#
# lc = wxLayoutConstraints()
# lc.top.PercentOf(nb, wxBottom, 0)
# lc.bottom.PercentOf(nb, wxBottom, 100)
# lc.left.PercentOf(nb, wxRight, 0)
# lc.right.PercentOf(nb, wxRight, 100)
# page.SetConstraints(lc)
page.SetAutoLayout(true)
# this should center "button" on "page":
lc = wxLayoutConstraints()
lc.centreY.PercentOf(page, wxBottom, 50)
lc.centreX.PercentOf(page, wxRight, 50)
lc.width.AsIs()
lc.height.AsIs()
button.SetConstraints(lc)
# button.SetAutoLayout(true)
#
button.Layout()
page.Layout()
nb.Layout()
self.Layout()
if __name__ == "__main__":
class MyFrame(wxFrame):
def __init__(self, *argT, **optionD):
apply(wxFrame.__init__, (self,) + argT, optionD)
self.SetAutoLayout(true)
TestLayoutConstraints(self)
class MyApp(wxApp):
def OnInit(self):
frame = MyFrame(None, -1, "TestLayoutConstraints",
size=wxSize(400,300))
frame.Show(true)
return true
app = MyApp()
app.MainLoop()