La funzione event.set_blocked() di Pygame

Pygame permette di sospendere un evento tramite la funzione event.set_blocked()

event.set_blocked(x)

Dove l'argomento x è l'identificativo dell'evento o una lista di identificativi degli eventi da bloccare .

Se gli eventi sono più di uno, vanno messi tra parentesi quadre e separati tra loro da una virgola.

Gli eventi bloccati non sono più seguiti da pygame nella gestione degli eventi.

Nota. Possono comunque essere sbloccati dalla funzione event.set_allowed(x). Dove x è l'evento o la lista degli eventi.

    Un esempio pratico

    In questo script disattivo l'evento MOUSEMOTION ossia il movimento del mouse sulla tastiera

    pygame.event.set_blocked(pygame.MOUSEMOTION)

    In questo script disattivo due eventi contemporaneamente.

    pygame.event.set_blocked([pygame.KEYDOWN, pygame.MOUSEMOTION])

    Per verificare se un evento è bloccato uso la funzione event.get_blocked()

    pygame.event.get_blocked(pygame.KEYDOWN)
    1

    La funzione restituisce

    • 1 se l'evento è bloccato
    • 0 se l'evento è attivo

    Per riattivare l'evento sbloccato posso utilizzare la funzione event.set_allowed()

    Ad esempio riattivo l'ascolto della pressione dei tasti sulla tastiera del PC.

    pygame.event.set_allowed(pygame.KEYDOWN)

    Per riattivare entrambi gli eventi bloccati

    pygame.event.set_allowed([pygame.KEYDOWN, pygame.MOUSEMOTION])

    Per riattivare tutti gli eventi con un unico comando posso usare il valore None

    event.set_allowed(None)

    Quest'ultima forma comunica a pygame di non disattivare nessun evento. Pertanto, li riattiva tutti.

    E così via.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    PyGame