]> git.saurik.com Git - wxWidgets.git/blob - wxPython/demo/wxSpinButton.py
Added PyPlot
[wxWidgets.git] / wxPython / demo / wxSpinButton.py
1 # 11/21/2003 - Jeff Grimmett (grimmtooth@softhome.net)
2 #
3 # o Updated for wx namespace
4 #
5 # 11/30/2003 - Jeff Grimmett (grimmtooth@softhome.net)
6 #
7 # o EVT_SPIN events (or something about them) freezes up the app.
8 #
9
10 import wx
11
12 #----------------------------------------------------------------------
13
14 class TestPanel(wx.Panel):
15 def __init__(self, parent, log):
16 wx.Panel.__init__(self, parent, -1)
17 self.log = log
18 self.count = 0
19
20 wx.StaticText(self, -1, "This example uses the wxSpinButton control.", (45, 15))
21
22 self.text = wx.TextCtrl(self, -1, "1", (30, 50), (60, -1))
23 h = self.text.GetSize().height
24
25 self.spin = wx.SpinButton(self, -1, (92, 50), (h, h), wx.SP_VERTICAL)
26 self.spin.SetRange(1, 100)
27 self.spin.SetValue(1)
28
29 self.Bind(wx.EVT_SPIN, self.OnSpin, self.spin)
30
31
32 def OnSpin(self, event):
33 self.text.SetValue(str(event.GetPosition()))
34
35
36 #----------------------------------------------------------------------
37
38 def runTest(frame, nb, log):
39 win = TestPanel(nb, log)
40 return win
41
42 #----------------------------------------------------------------------
43
44
45 overview = """\
46 A wxSpinButton has two small up and down (or left and right) arrow buttons.
47 It is often used next to a text control for increment and decrementing a value.
48 Portable programs should try to use wxSpinCtrl instead as wxSpinButton is not
49 implemented for all platforms (Win32 and GTK only currently).
50
51 NB: the range supported by this control (and wxSpinCtrl) depends on the platform
52 but is at least -0x8000 to 0x7fff. Under GTK and Win32 with sufficiently new version
53 of comctrl32.dll (at least 4.71 is required, 5.80 is recommended) the full 32 bit
54 range is supported.
55
56 """
57
58 if __name__ == '__main__':
59 import sys,os
60 import run
61 run.main(['', os.path.basename(sys.argv[0])])