wxPython定时器wx.Timer的简单应用示例
2011-09-29 20:09
288 查看
view
plain
# -*- coding: utf-8 -*-
########################################################
## 这是wxPython定时器wx.Timer的简单应用
## testwxTimer1.pyw
########################################################
import wx
import time
########################################################
class MyFrame1 ( wx.Frame ):
def __init__( self, parent ):
wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = u"测试定时器的小程序", pos = wx.DefaultPosition, size = wx.Size( 483,155 ), style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL )
self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )
self.SetBackgroundColour( wx.SystemSettings.GetColour( wx.SYS_COLOUR_INACTIVECAPTIONTEXT ) )
gSizer1 = wx.GridSizer( 0, 2, 0, 0 )
self.m_btnStart = wx.Button( self, wx.ID_ANY, u"启动定时器", wx.DefaultPosition, wx.DefaultSize, 0 )
gSizer1.Add( self.m_btnStart, 0, wx.ALL, 5 )
self.m_btnStop = wx.Button( self, wx.ID_ANY, u"停止定时器", wx.DefaultPosition, wx.DefaultSize, 0 )
gSizer1.Add( self.m_btnStop, 0, wx.ALL, 5 )
self.SetSizer( gSizer1 )
self.Layout()
self.m_statusBar1 = self.CreateStatusBar( 2, wx.ST_SIZEGRIP, wx.ID_ANY )
self.Centre( wx.BOTH )
# Connect Events
self.m_btnStart.Bind( wx.EVT_BUTTON, self.OnStart )
self.m_btnStop.Bind( wx.EVT_BUTTON, self.OnStop )
# 创建定时器
self.timer = wx.Timer(self)#创建定时器
self.Bind(wx.EVT_TIMER, self.OnTimer, self.timer)#绑定一个定时器事件
def __del__( self ):
pass
# Virtual event handlers, overide them in your derived class
def OnStart( self, event ):
self.timer.Start(1000)#设定时间间隔为1000毫秒,并启动定时器
def OnStop( self, event ):
self.timer.Stop()
def OnTimer(self, evt):#显示时间事件处理函数
t = time.localtime(time.time())
StrYMDt = time.strftime("%Y-%B-%d", t)
self.SetStatusText(StrYMDt,0) #显示年月日
StrIMSt = time.strftime("%I:%M:%S", t)
self.SetStatusText(StrIMSt,1)#显示时间
########################################################
## 以上界面代码使用wxFormBuilder自动创建
########################################################
if __name__=='__main__':
app = wx.PySimpleApp()
frame = MyFrame1(None)
frame.Show()
app.MainLoop()
########################################################
转自:/article/8130364.html
plain
# -*- coding: utf-8 -*-
########################################################
## 这是wxPython定时器wx.Timer的简单应用
## testwxTimer1.pyw
########################################################
import wx
import time
########################################################
class MyFrame1 ( wx.Frame ):
def __init__( self, parent ):
wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = u"测试定时器的小程序", pos = wx.DefaultPosition, size = wx.Size( 483,155 ), style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL )
self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )
self.SetBackgroundColour( wx.SystemSettings.GetColour( wx.SYS_COLOUR_INACTIVECAPTIONTEXT ) )
gSizer1 = wx.GridSizer( 0, 2, 0, 0 )
self.m_btnStart = wx.Button( self, wx.ID_ANY, u"启动定时器", wx.DefaultPosition, wx.DefaultSize, 0 )
gSizer1.Add( self.m_btnStart, 0, wx.ALL, 5 )
self.m_btnStop = wx.Button( self, wx.ID_ANY, u"停止定时器", wx.DefaultPosition, wx.DefaultSize, 0 )
gSizer1.Add( self.m_btnStop, 0, wx.ALL, 5 )
self.SetSizer( gSizer1 )
self.Layout()
self.m_statusBar1 = self.CreateStatusBar( 2, wx.ST_SIZEGRIP, wx.ID_ANY )
self.Centre( wx.BOTH )
# Connect Events
self.m_btnStart.Bind( wx.EVT_BUTTON, self.OnStart )
self.m_btnStop.Bind( wx.EVT_BUTTON, self.OnStop )
# 创建定时器
self.timer = wx.Timer(self)#创建定时器
self.Bind(wx.EVT_TIMER, self.OnTimer, self.timer)#绑定一个定时器事件
def __del__( self ):
pass
# Virtual event handlers, overide them in your derived class
def OnStart( self, event ):
self.timer.Start(1000)#设定时间间隔为1000毫秒,并启动定时器
def OnStop( self, event ):
self.timer.Stop()
def OnTimer(self, evt):#显示时间事件处理函数
t = time.localtime(time.time())
StrYMDt = time.strftime("%Y-%B-%d", t)
self.SetStatusText(StrYMDt,0) #显示年月日
StrIMSt = time.strftime("%I:%M:%S", t)
self.SetStatusText(StrIMSt,1)#显示时间
########################################################
## 以上界面代码使用wxFormBuilder自动创建
########################################################
if __name__=='__main__':
app = wx.PySimpleApp()
frame = MyFrame1(None)
frame.Show()
app.MainLoop()
########################################################
转自:/article/8130364.html
相关文章推荐
- springmvc 项目完整示例01 需求与数据库表设计 简单的springmvc应用实例 web项目
- AJAX的简单应用(加法运算示例)
- 应用shellcode的简单示例
- VS.NET 2005 + VSS6.0简单应用示例
- ADODC控件简单应用示例
- jenkins自动部署应用到tomcat中,编译后shell脚本的简单示例
- Ajax应用简单示例
- Ajax简单应用示例: XMLHttpRequest对象实例化方式及调用
- Linux应用编程基础之多路复用:select和poll的简单使用示例
- JueryUI插件的简单应用(一):介绍及第一个示例
- 正则表达式中环视的简单应用示例【基于java】
- 在Java应用中使用BeanShell(2.0b41)的简单示例
- [Ajax]AJAX的简单应用(加法运算示例)
- AJAX基础应用的简单示例
- nodejs入门教程二:创建一个简单应用示例
- jquery.query.js 插件(示例及简单应用)
- Notification的一个简单应用代码示例
- javaFx菜单简单应用示例--1多级菜单
- 简单的vue-resourse获取json并应用到模板示例
- KbmMemTable的简单应用(增删改查示例)