Spec-Zone.ru › Pygame
pygame.fastevent
Модуль pygame для взаимодействия с событиями и очередями

ВАЖНОЕ ПРИМЕЧАНИЕ: ЭТОТ МОДУЛЬ УСТЕРЕЛ В PYGAME 2.2

В более старых версиях pygame до pygame 2, pygame.event не подходил для публикации событий из разных потоков. Этот модуль служил заменой (с меньшим функционалом) для многопоточной работы. Теперь использование этого модуля крайне не рекомендуется в пользу основного модуля pygame.event. Этот модуль будет удалён в будущей версии pygame.

Ниже приводится устаревшая документация модуля

pygame.fastevent.init()
инициализировать pygame.fastevent
init() -> None

Инициализировать модуль pygame.fastevent.

pygame.fastevent.get_init()
возвращает True, если модуль fastevent в настоящее время инициализирован
get_init() -> bool

Возвращает True, если модуль pygame.fastevent в настоящее время инициализирован.

pygame.fastevent.pump()
внутренне обрабатывает обработчики событий pygame
pump() -> None

Для каждого кадра вашей игры вам нужно будет выполнить некоторое действие в очереди событий. Это гарантирует, что ваша программа может взаимодействовать с остальной операционной системой.

Эта функция не требуется, если ваша программа постоянно обрабатывает события в очереди через другие функции pygame.fastevent.

Важно обработать внутренние события в очереди. Возможно, главному окну нужно будет перерисоваться или ответить на системный запрос. Если вы слишком долго не вызываете обработку очереди событий, система может посчитать, что ваша программа зависла.

pygame.fastevent.wait()
ожидать события
wait() -> Event

Возвращает текущее событие в очереди. Если в очереди нет сообщений, эта функция не вернётся, пока не появится сообщение. Иногда важно использовать ожидание для получения событий из очереди; это позволит вашему приложению простаивать, когда пользователь с ним ничего не делает.

pygame.fastevent.poll()
получить доступное событие
poll() -> Event

Возвращает следующее событие в очереди. Если в очереди нет ожидающих событий, возвращает событие с типом NOEVENT.

pygame.fastevent.get()
получить все события из очереди
get() -> список событий

Получит все сообщения и удалит их из очереди.

pygame.fastevent.post()
разместить событие в очереди
post(Event) -> None

Это позволит добавить собственные объекты событий в очередь событий. Вы можете размещать события любого типа, но при этом нужно соблюдать осторожность. Например, если вы помещаете событие MOUSEBUTTONDOWN в очередь, то код, получающий событие, скорее всего, ожидает, что стандартные атрибуты MOUSEBUTTONDOWN, такие как 'pos' и 'button', будут доступны.

Поскольку pygame.fastevent.post() может ожидать, пока очередь не опустеет, вы можете попасть в тупик, если попытаетесь добавить событие в полную очередь из потока, который обрабатывает события. По этой причине я не рекомендую использовать эту функцию в главном потоке программы SDL.




Редактировать на GitHub

© Pygame Developers.
Licensed under the GNU LGPL License version 2.1.
https://www.pygame.org/docs/ref/fastevent.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API