wxPython定时器wx.Timer简单应用实例

yipeiwu_com6年前Python基础

本文实例讲述了wxPython定时器wx.Timer简单应用。分享给大家供大家参考。具体如下:

# -*- 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() 
######################################################## 

运行效果如下所示:

希望本文所述对大家的Python程序设计有所帮助。

相关文章

Python深入06——python的内存管理详解

Python深入06——python的内存管理详解

语言的内存管理是语言设计的一个重要方面。它是决定语言性能的重要因素。无论是C语言的手工管理,还是Java的垃圾回收,都成为语言最重要的特征。这里以Python语言为例子,说明一门动态类型...

Python使用迭代器捕获Generator返回值的方法

本文实例讲述了Python使用迭代器捕获Generator返回值的方法。分享给大家供大家参考,具体如下: 用for循环调用generator时,发现拿不到generator的return...

深入理解Python中命名空间的查找规则LEGB

名字空间 Python 的名字空间是 Python 一个非常核心的内容。 其他语言中如 C 中,变量名是内存地址的别名,而在 Python 中,名字是一个字符串对象,它与他指向的对象构成...

python实现的二叉树定义与遍历算法实例

python实现的二叉树定义与遍历算法实例

本文实例讲述了python实现的二叉树定义与遍历算法。分享给大家供大家参考,具体如下: 初学python,需要实现一个决策树,首先实践一下利用python实现一个二叉树数据结构。建树的时...

将图片文件嵌入到wxpython代码中的实现方法

将图片文件嵌入到wxpython代码中的实现方法

下面直接上代码留存,方便以后查阅复用。 # -*- coding: utf-8 -*- #作者:LeniyTsan #时间:2014-07-17 import wx from...