Quelle est la méthode canonique pour que vos sprites réagissent aux clics de souris dans PyGame?Comment répondre aux clics de la souris sur les sprites dans PyGame?
Voici quelque chose de simple, dans ma boucle d'événement:
for event in pygame.event.get():
if event.type == pygame.QUIT:
exit_game()
[...]
elif ( event.type == pygame.MOUSEBUTTONDOWN and
pygame.mouse.get_pressed()[0]):
for sprite in sprites:
sprite.mouse_click(pygame.mouse.get_pos())
Quelques questions à son sujet:
- Est-ce la meilleure façon de répondre aux clics de souris?
- Que faire si la souris reste enfoncée sur l'image-objet pendant un certain temps? Comment puis-je en faire un seul événement?
- Est-ce un moyen raisonnable de notifier tous mes sprites du clic?
Merci à l'avance
Merci. A propos de la partie 'event.button == 1', n'y a-t-il pas de constante au lieu de cette 1 explicite dans PyGame? –
Je ne pense pas que ce soit nécessaire. 1 est toujours le bouton gauche, 2 le milieu, et 3 est le droit. 3 est le droit même sur les souris avec seulement deux boutons. – Zoomulator