Comprendre la saisie au clavier dans Pygame
Obtenir la saisie au clavier dans Pygame est essentiel pour créer des jeux et des applications interactifs. Bien que l'utilisation des événements KEYDOWN et KEYUP fournisse des informations au moment exact où une touche est enfoncée ou relâchée, elles peuvent s'avérer insuffisantes pour les scénarios dans lesquels vous avez besoin de savoir si une touche est actuellement enfoncée.
Récupération de l'état des clés avec pygame.key.get_pressed()
Pour obtenir l'état actuel de toutes les clés, vous pouvez utiliser la fonction pygame.key.get_pressed(). Cette fonction renvoie une liste de valeurs booléennes, où chaque élément correspond à l'état d'une clé spécifique. Une valeur True indique que la touche est actuellement enfoncée, tandis que False indique que ce n'est pas le cas.
Par exemple, pour vérifier si la touche fléchée vers le haut ou vers le bas est enfoncée :
<code class="python">keys = pygame.key.get_pressed() if keys[pygame.K_UP]: # [...] if keys[pygame.K_DOWN]: # [...]</code>
Utilisation dans la boucle d'application principale
Pour récupérer en continu l'état de la clé, vous devez intégrer cette logique dans votre boucle d'application principale :
<code class="python">run = True while run: for event in pygame.event.get(): if event.type == pygame.QUIT: run = False keys = pygame.key.get_pressed() if keys[pygame.K_UP]: # [...] if keys[pygame.K_DOWN]: # [...]</code>
Remarque : Les états clés renvoyés par pygame.key.get_pressed() sont mis à jour lorsque les événements sont gérés à l'aide de pygame.event.pump() ou pygame.event.get().
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!