]>
Commit | Line | Data |
---|---|---|
96de41c2 RD |
1 | |
2 | from wxPython.wx import * | |
3 | from wxPython.lib.rcsizer import RowColSizer | |
4 | ||
5 | ||
6 | #---------------------------------------------------------------------- | |
7 | ||
8 | class TestPanel(wxPanel): | |
9 | def __init__(self, parent): | |
10 | wxPanel.__init__(self, parent, -1) | |
11 | ||
12 | sizer = RowColSizer() | |
936bea5d RD |
13 | text = "This sizer lays out it's items by row and column "\ |
14 | "that are specified explicitly when the item is \n"\ | |
15 | "added to the sizer. Grid cells with nothing in "\ | |
16 | "them are supported and column- or row-spanning is \n"\ | |
17 | "handled as well. Growable rows and columns are "\ | |
18 | "specified just like the wxFlexGridSizer." | |
19 | ||
96de41c2 RD |
20 | sizer.Add(wxStaticText(self, -1, text), row=1, col=1, colspan=5) |
21 | ||
22 | sizer.Add(wxTextCtrl(self, -1, "(3,1)"), flag=wxEXPAND, row=3, col=1) | |
23 | sizer.Add(wxTextCtrl(self, -1, "(3,2)"), row=3, col=2) | |
24 | sizer.Add(wxTextCtrl(self, -1, "(3,3)"), row=3, col=3) | |
25 | sizer.Add(wxTextCtrl(self, -1, "(3,4)"), row=3, col=4) | |
26 | sizer.Add(wxTextCtrl(self, -1, "(4,2) span:(2,2)"), flag=wxEXPAND, | |
27 | row=4, col=2, rowspan=2, colspan=2) | |
28 | sizer.Add(wxTextCtrl(self, -1, "(6,4)"), row=6, col=4) | |
29 | sizer.Add(wxTextCtrl(self, -1, "(7,2)"), row=7, col=2) | |
30 | sizer.Add(wxTextCtrl(self, -1, "(8,3)"), row=8, col=3) | |
31 | sizer.Add(wxTextCtrl(self, -1, "(10,1) colspan: 4"), flag=wxEXPAND, pos=(10,1), colspan=4) | |
32 | sizer.Add(wxTextCtrl(self, -1, "(3,5) rowspan: 8, growable col", style=wxTE_MULTILINE), | |
33 | flag=wxEXPAND, pos=(3,5), size=(8,1)) | |
34 | ||
35 | box = wxBoxSizer(wxVERTICAL) | |
36 | box.Add(wxButton(self, -1, "A vertical box"), flag=wxEXPAND) | |
37 | box.Add(wxButton(self, -1, "sizer put in the"), flag=wxEXPAND) | |
38 | box.Add(wxButton(self, -1, "RowColSizer at (12,1)"), flag=wxEXPAND) | |
39 | sizer.Add(box, pos=(12,1)) | |
40 | ||
41 | sizer.Add(wxTextCtrl(self, -1, "(12,2) align bottom"), flag=wxALIGN_BOTTOM, pos=(12,2)) | |
42 | sizer.Add(wxTextCtrl(self, -1, "(12,3) align center"), flag=wxALIGN_CENTER_VERTICAL, pos=(12,3)) | |
43 | sizer.Add(wxTextCtrl(self, -1, "(12,4)"),pos=(12,4)) | |
44 | sizer.Add(wxTextCtrl(self, -1, "(12,5) full border"), flag=wxEXPAND|wxALL, border=15, pos=(12,5)) | |
45 | ||
46 | sizer.AddGrowableCol(5) | |
47 | sizer.AddGrowableRow(9) | |
48 | ||
49 | sizer.AddSpacer(10,10, pos=(1,6)) | |
50 | sizer.AddSpacer(10,10, pos=(13,1)) | |
51 | ||
52 | self.SetSizer(sizer) | |
1e4a197e | 53 | self.SetAutoLayout(True) |
96de41c2 RD |
54 | |
55 | ||
56 | #---------------------------------------------------------------------- | |
57 | ||
58 | def runTest(frame, nb, log): | |
59 | win = TestPanel(nb) | |
60 | return win | |
61 | ||
62 | ||
63 | #---------------------------------------------------------------------- | |
64 | ||
65 | ||
66 | import wxPython.lib.rcsizer | |
67 | overview = wxPython.lib.rcsizer.__doc__ | |
68 | ||
69 | ||
1e4a197e RD |
70 | |
71 | if __name__ == '__main__': | |
72 | import sys,os | |
73 | import run | |
74 | run.main(['', os.path.basename(sys.argv[0])]) | |
75 |