def message_pump(self): quit_key = HotKey(lambda: 0, key=self.kill_key) msg = wintypes.MSG() while user32.GetMessageA(byref(msg), None, 0, 0) != 0: if msg.message == win32con.WM_HOTKEY: if msg.wParam == quit_key.id: break HotKey.on_hotkey(msg.wParam) elif msg.message == win32con.WM_TIMER: WindowsTimer.on_WM_TIMER(msg.wParam) user32.TranslateMessage(byref(msg)) user32.DispatchMessageA(byref(msg))