wxWidgets/wxPython/demo/wxTimer.py
2003-07-02 23:13:10 +00:00

86 lines
2.2 KiB
Python

from wxPython.wx import *
import time
#---------------------------------------------------------------------------
## class TestTimer(wxTimer):
## def __init__(self, log = None):
## wxTimer.__init__(self)
## self.log = log
## def Notify(self):
## wxBell()
## if self.log:
## self.log.WriteText('beep!\n')
#---------------------------------------------------------------------------
ID_Start = wxNewId()
ID_Stop = wxNewId()
ID_Timer = wxNewId()
ID_Timer2 = wxNewId()
class TestTimerWin(wxPanel):
def __init__(self, parent, log):
wxPanel.__init__(self, parent, -1)
self.log = log
wxStaticText(self, -1, "This is a timer example",
wxPoint(15, 30))
wxButton(self, ID_Start, ' Start ', wxPoint(15, 75), wxDefaultSize)
wxButton(self, ID_Stop, ' Stop ', wxPoint(115, 75), wxDefaultSize)
self.timer = wxTimer(self, # object to send the event to
ID_Timer) # event id to use
self.timer2 = wxTimer(self, # object to send the event to
ID_Timer2) # event id to use
EVT_BUTTON(self, ID_Start, self.OnStart)
EVT_BUTTON(self, ID_Stop, self.OnStop)
EVT_TIMER(self, ID_Timer, self.OnTimer)
EVT_TIMER(self, ID_Timer2, self.OnTimer2)
def OnStart(self, event):
self.timer.Start(1000)
self.timer2.Start(1500)
def OnStop(self, event):
self.timer.Stop()
self.timer2.Stop()
def OnTimer(self, event):
wxBell()
if self.log:
self.log.WriteText('beep!\n')
def OnTimer2(self, event):
wxBell()
if self.log:
self.log.WriteText('beep 2!\n')
#---------------------------------------------------------------------------
def runTest(frame, nb, log):
win = TestTimerWin(nb, log)
return win
#---------------------------------------------------------------------------
overview = """\
The wxTimer class allows you to execute code at specified intervals.
"""
if __name__ == '__main__':
import sys,os
import run
run.main(['', os.path.basename(sys.argv[0])])