Архитектура событий в PyGame работает следующим образом: все события от пользователя регистрируются в очередь событий. 1 Каждый элемент в этой очереди — объект Event. 1
Для получения доступа к событиям используется метод pygame.event.get(), который возвращает список событий, произошедших с момента последнего вызова этого метода. 2 Забранные события удаляются из очереди, то есть второй раз они уже забираться не будут, а в очередь продолжают записываться новые события. 3
Чтобы обрабатывать события, нужно просмотреть очередь, проверить тип события (с помощью предопределённых констант в модуле PyGame), а затем выполнить некоторые действия. 1
Например, события клавиатуры в PyGame имеют два типа: KEYDOWN (клавиша нажата) и KEYUP (клавиша отпущена). 2 События мыши — четыре типа: MOUSEMOTION (курсор мыши перемещается), MOUSEBUTTONDOWN (кнопка мыши нажата), MOUSEBUTTONUP (кнопка мыши отпущена) и MOUSEWHEEL (кручение колёсика мыши). 2