我正在制作一个数字时钟。其中一个问题是显示会出现“闪烁”。换句话说,wx.StaticText小部件(在这种情况下为self.ST)会在极短的时间内变空白。我认为原因可能在于self.ST更新(即SetLabel())的方式。是否有一种方法可以提供更平滑的过渡,以防止闪烁?
这是更新self.ST的函数:
这是更新self.ST的函数:
def tick (self):
''' Continually updates the time. '''
TimeStr = '%I:%M %S %p'
DateStr = '%A, %B %d, %Y'
Time = time.strftime(TimeStr)
Date = time.strftime(DateStr)
self.TimeDate = Time + '\t\t' + Date
self.ST.SetLabel(Time)
wx.CallLater(1000, self.tick)
SetDoubleBuffered
,而不需要重写初始化方法,例如self.statusReadoutPanel.SetDoubleBuffered(True)
。 - Fake Name