Quelle est la meilleure façon d'implémenter la gestion du clavier? Dans toutes les langues, où j'écris un programme de clavier interactif (comme un jeu de tetris), je finis par avoir un code qui ressemble à ceci:Gestion efficace des entrées au clavier
for event in pygame.event.get():
if event.type == KEYDOWN:
if False: pass #make everything an elif
elif rotating: pass
elif event.key == K_q:
elif event.key == K_e:
elif event.key == K_LEFT:
curpiece.shift(-1, 0)
shadowpiece = curpiece.clone(); setupshadow(shadowpiece)
elif event.key == K_RIGHT:
curpiece.shift(1, 0)
shadowpiece = curpiece.clone(); setupshadow(shadowpiece)
(raccourci). Je n'aime pas ça, car cela doit aller dans ma boucle principale, et ça dérange toutes les parties du programme. Cela rend également impossible d'avoir un écran de configuration de l'utilisateur où ils peuvent changer quelle touche correspond à quelle action. Existe-t-il un bon modèle pour cela en utilisant une forme de rappel de fonction?
Voir aussi http://stackoverflow.com/questions/292095/polling-the-keyboard-in-python –