self.log = log
wx.Panel.__init__(self, parent, -1)
- wx.StaticText(self, -1, "This example uses the wxCheckBox control.", (10, 10))
+ st = wx.StaticText(self, -1, "This example demonstrates the wx.CheckBox control.")#, (10, 10))
- cb1 = wx.CheckBox(self, -1, " Apples", (65, 40), (150, 20), wx.NO_BORDER)
- cb2 = wx.CheckBox(self, -1, " Oranges", (65, 60), (150, 20), wx.NO_BORDER)
+ cb1 = wx.CheckBox(self, -1, "Apples")#, (65, 40), (150, 20), wx.NO_BORDER)
+ cb2 = wx.CheckBox(self, -1, "Oranges")#, (65, 60), (150, 20), wx.NO_BORDER)
cb2.SetValue(True)
- cb3 = wx.CheckBox(self, -1, " Pears", (65, 80), (150, 20), wx.NO_BORDER)
+ cb3 = wx.CheckBox(self, -1, "Pears")#, (65, 80), (150, 20), wx.NO_BORDER)
+
+ cb4 = wx.CheckBox(self, -1, "3-state checkbox",
+ style=wx.CHK_3STATE|wx.CHK_ALLOW_3RD_STATE_FOR_USER)
+ cb5 = wx.CheckBox(self, -1, "Align Right", style=wx.ALIGN_RIGHT)
+
self.Bind(wx.EVT_CHECKBOX, self.EvtCheckBox, cb1)
self.Bind(wx.EVT_CHECKBOX, self.EvtCheckBox, cb2)
self.Bind(wx.EVT_CHECKBOX, self.EvtCheckBox, cb3)
+ self.Bind(wx.EVT_CHECKBOX, self.EvtCheckBox, cb4)
+ self.Bind(wx.EVT_CHECKBOX, self.EvtCheckBox, cb5)
+
+ sizer = wx.BoxSizer(wx.VERTICAL)
+ sizer.AddMany( [ cb1,
+ cb2,
+ cb3,
+ (20,20),
+ cb4,
+ (20,20),
+ cb5
+ ])
+
+ border = wx.BoxSizer(wx.VERTICAL)
+ border.Add(st, 0, wx.ALL, 15)
+ border.Add(sizer, 0, wx.LEFT, 50)
+ self.SetSizer(border)
+
def EvtCheckBox(self, event):
- self.log.WriteText('EvtCheckBox: %d\n' % event.IsChecked())
+ self.log.write('EvtCheckBox: %d\n' % event.IsChecked())
+ cb = event.GetEventObject()
+ if cb.Is3State():
+ self.log.write("\t3StateValue: %s\n" % cb.Get3StateValue())
+
#---------------------------------------------------------------------------
if __name__ == '__main__':
import sys,os
import run
- run.main(['', os.path.basename(sys.argv[0])])
+ run.main(['', os.path.basename(sys.argv[0])] + sys.argv[1:])