This class is a special event handler which allows discarding any event (or a set of event types) directed to a specific window.
Example:
def DoSomething(self):
# block all events directed to this window while
# we do the 1000 FunctionWhichSendsEvents() calls
with wx.EventBlocker(self) as blocker:
for i in xrange(1000):
FunctionWhichSendsEvents(i)
# wx.EventBlocker destructor called on exit from the context
# manager, old event handlers are restored.
# the event generated by this call will be processed:
FunctionWhichSendsEvents(0)
See also
How Events are Processed, wx.EvtHandler
Constructs the blocker for the given window and for the given event type. |
|
Adds to the list of event types which should be blocked the given eventType. |
|
wx.
EventBlocker
(EvtHandler)¶Possible constructors:
EventBlocker(win, type=-1)
This class is a special event handler which allows discarding any event (or a set of event types) directed to a specific window.
__init__
(self, win, type=-1)¶Constructs the blocker for the given window and for the given event type.
If type is wxEVT_ANY
, then all events for that window are blocked. You can call Block
after creation to add other event types to the list of events to block.
Note that the win window must remain alive until the wx.EventBlocker object destruction.
win (wx.Window) –
type (wx.EventType) –
Block
(self, eventType)¶Adds to the list of event types which should be blocked the given eventType.
eventType (wx.EventType) –
__enter__
(self)¶__exit__
(self, exc_type, exc_val, exc_tb)¶