More demo conversion and cleanup from Jeff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1,7 +1,27 @@
|
||||
# 11/21/2003 - Jeff Grimmett (grimmtooth@softhome.net)
|
||||
#
|
||||
# o Updated for wx namespace
|
||||
#
|
||||
# 1/11/2004 - Jeff Grimmett (grimmtooth@softhome.net)
|
||||
#
|
||||
# o It appears that wx.Timer has an issue where if you use
|
||||
#
|
||||
# self.timer = wx.Timer(self, -1)
|
||||
#
|
||||
# to create it, then
|
||||
#
|
||||
# self.timer.GetId()
|
||||
#
|
||||
# doesn't seem to return anything meaningful. In the demo, doing this
|
||||
# results in only one of the two handlers being called for both timers.
|
||||
# This means that
|
||||
#
|
||||
# self.Bind(wx.EVT_TIMER, self.onTimer, self.timer)
|
||||
#
|
||||
# doesn't work right. However, using
|
||||
#
|
||||
# self.timer = wx.Timer(self, wx.NewId())
|
||||
#
|
||||
# makes it work OK. I believe this is a bug, but wiser heads than mine
|
||||
# should determine this.
|
||||
#
|
||||
|
||||
import time
|
||||
import wx
|
||||
@@ -10,41 +30,33 @@ import wx
|
||||
|
||||
## For your convenience; an example of creating your own timer class.
|
||||
##
|
||||
## class TestTimer(wxTimer):
|
||||
## class TestTimer(wx.Timer):
|
||||
## def __init__(self, log = None):
|
||||
## wxTimer.__init__(self)
|
||||
## wx.Timer.__init__(self)
|
||||
## self.log = log
|
||||
## def Notify(self):
|
||||
## wxBell()
|
||||
## wx.Bell()
|
||||
## if self.log:
|
||||
## self.log.WriteText('beep!\n')
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
ID_Start = wx.NewId()
|
||||
ID_Stop = wx.NewId()
|
||||
ID_Timer = wx.NewId()
|
||||
ID_Timer2 = wx.NewId()
|
||||
|
||||
class TestTimerWin(wx.Panel):
|
||||
def __init__(self, parent, log):
|
||||
wx.Panel.__init__(self, parent, -1)
|
||||
self.log = log
|
||||
|
||||
wx.StaticText(self, -1, "This is a timer example", (15, 30))
|
||||
wx.Button(self, ID_Start, ' Start ', (15, 75), wx.DefaultSize)
|
||||
wx.Button(self, ID_Stop, ' Stop ', (115, 75), wx.DefaultSize)
|
||||
startBtn = wx.Button(self, -1, ' Start ', (15, 75), wx.DefaultSize)
|
||||
stopBtn = wx.Button(self, -1, ' Stop ', (115, 75), wx.DefaultSize)
|
||||
|
||||
self.timer = wx.Timer(self, # object to send the event to
|
||||
ID_Timer) # event id to use
|
||||
self.timer = wx.Timer(self, wx.NewId())
|
||||
self.timer2 = wx.Timer(self, wx.NewId())
|
||||
|
||||
self.timer2 = wx.Timer(self, # object to send the event to
|
||||
ID_Timer2) # event id to use
|
||||
|
||||
self.Bind(wx.EVT_BUTTON, self.OnStart, id=ID_Start)
|
||||
self.Bind(wx.EVT_BUTTON, self.OnStop, id=ID_Stop)
|
||||
self.Bind(wx.EVT_TIMER, self.OnTimer, id=ID_Timer)
|
||||
self.Bind(wx.EVT_TIMER, self.OnTimer2, id=ID_Timer2)
|
||||
self.Bind(wx.EVT_BUTTON, self.OnStart, startBtn)
|
||||
self.Bind(wx.EVT_BUTTON, self.OnStop, stopBtn)
|
||||
self.Bind(wx.EVT_TIMER, self.OnTimer, self.timer)
|
||||
self.Bind(wx.EVT_TIMER, self.OnTimer2, self.timer2)
|
||||
|
||||
def OnStart(self, event):
|
||||
self.timer.Start(1000)
|
||||
@@ -75,7 +87,7 @@ def runTest(frame, nb, log):
|
||||
|
||||
|
||||
overview = """\
|
||||
The wxTimer class allows you to execute code at specified intervals from
|
||||
The wx.Timer class allows you to execute code at specified intervals from
|
||||
within the wxPython event loop. Timers can be one-shot or repeating.
|
||||
|
||||
"""
|
||||
|
Reference in New Issue
Block a user