KEYDOWN-Funktion in Pygame
Dieses kurze Tutorial zeigt, wie man KEYDOWN
in Pygame verwendet.
die KEYDOWN
-Funktion in Pygame
Mit der Funktion KEYDOWN
erfassen Sie den Moment, in dem die Taste gedrückt wurde, und es ist eine Konstante. Wir testen es anhand der Ereignistypen, die von der Methode pygame.event.get()
zurückgegeben werden.
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
elif event.type == pygame.KEYDOWN:
# your code
pass
Es erfolgt keine Ausgabe, wenn die Taste gedrückt gehalten wird. Wir haben zwei Möglichkeiten, das zu ändern.
Wir können die Methode pygame.key.set_repeat(delay)
aufrufen und ihr die Zeit in Millisekunden übergeben, nach der das Event erneut aufgerufen werden soll, wenn es gedrückt gehalten wird. Dann wird es nach dem Drücken nach der von uns angegebenen Zeit ausgelöst.
Es ist nicht die beste Vorgehensweise, dies auf diese Weise zu tun, und es ist besser, pygame.key.get_pressed
zu verwenden und nach dem unten dargestellten Schlüssel zu suchen.
keys = pygame.key.get_pressed()
if keys[pygame.K_w]:
print("W Pressed")
Vollständiger Code:
# Imports
import sys
import pygame
# Configuration
pygame.init()
fps = 60
fpsClock = pygame.time.Clock()
width, height = 640, 480
screen = pygame.display.set_mode((width, height))
pygame.key.set_repeat(10)
# Game loop.
while True:
screen.fill((20, 20, 20))
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
elif event.type == pygame.KEYDOWN:
# your code
pass
keys = pygame.key.get_pressed()
if keys[pygame.K_w]:
print("W Pressed")
pygame.display.flip()
fpsClock.tick(fps)
Hi, my name is Maxim Maeder, I am a young programming enthusiast looking to have fun coding and teaching you some things about programming.
GitHub