Когда в цикле событий есть два идентичных события, будет ли wxPython обрабатывать их оба или он будет вызывать обработчик только один раз для них обоих?
Я имею в виду, что в моем виджете я хочу иметь событие типа EVT_NEED_TO_RECALCULATE_X. Я хочу, чтобы это событие было опубликовано во всех видах различных обстоятельств, которые требуют пересчета x. Однако, даже если есть две разные причины для пересчета x, необходимо выполнить только один пересчет.
Как мне это сделать?
ИЗМЕНИТЬ:
Я пробовал этот код:
import wx
class Frame(wx.Frame):
def __init__(self, parent=None):
wx.Frame.__init__(self, parent)
self.Bind(wx.EVT_COLOURPICKER_CHANGED, self.on_event)
self.Centre()
self.Show(True)
self.i = 0
self.event_all()
def on_event(self, event):
print self.i
self.i += 1
def event_all(self):
for j in range(1000):
event = wx.PyEvent()
event.SetEventType(wx.EVT_COLOURPICKER_CHANGED.evtType[0])
wx.PostEvent(self, event)
app = wx.App()
Frame(None)
app.MainLoop()
Если события делают сгруппированы вместе, я ожидаю, что они не будут считаться до 1000. Но это так. Они группируются или нет?