Evento Mousebuttondown en PyGame

Fariba Laiq 30 enero 2023
  1. Instalar PyGame en Python 2.7
  2. Instalar PyGame en Python 3.5
  3. Detectar el Evento MOUSEBUTTONDOWN en PyGame
Evento Mousebuttondown en PyGame

PyGame, como su nombre lo indica, es una biblioteca multimedia de código abierto en Python que se utiliza principalmente para hacer videojuegos que incluyen gráficos, sonidos, imágenes, etc. En la actualidad, la programación de juegos tiene bastante éxito.

Es una biblioteca multiplataforma que funcionará en múltiples plataformas con una sola base de código. Esta biblioteca contiene muchos módulos para gráficos y sonidos, ya que cualquier juego no tiene sentido sin sonidos ni gráficos.

Este tutorial demuestra cómo detectar el evento MOUSEBUTTONDOWN usando PyGame y desencadenar una acción en respuesta.

Instalar PyGame en Python 2.7

Para usar esta biblioteca, debemos instalarla primero. Si está ejecutando la versión 2.7 de Python, debe usar el siguiente comando para instalar PyGame.

None

Instalar PyGame en Python 3.5

Si está ejecutando la versión 3.5 de Python, debe usar el siguiente comando.

#Python 3.x
pip3 install pygame

Detectar el Evento MOUSEBUTTONDOWN en PyGame

En cualquier juego, recibir información del jugador y realizar una acción es la parte principal del juego. El evento MOUSEBUTTONDOWN ocurre cuando hace clic en el botón del mouse, ya sea a la izquierda o a la derecha, independientemente de cuánto tiempo lo mantenga presionado después de hacer clic.

En el siguiente código, configuramos la ventana del juego y definimos la longitud y la altura de la ventana en píxeles. Hemos creado el bucle principal (bucle while) y el bucle de eventos (bucle for) para capturar los eventos.

En el bucle for, hemos comprobado el tipo de evento utilizando las condiciones if. Cuando se activa el evento MOUSEBUTTONDOWN, un mensaje mostrará MOUSEBUTTONDOWN event occurred.

Si el usuario sale del juego presionando el botón X en la ventana del juego, se activa el evento QUIT y, en respuesta, el juego finaliza y se cierra la ventana. Aquí hemos presionado el botón del mouse una vez en la ventana de PyGame.

Código de ejemplo:

# Python 3.x
import pygame
import sys

pygame.init()
display = pygame.display.set_mode((500, 500))
while True:
    for event in pygame.event.get():
        if event.type == pygame.MOUSEBUTTONDOWN:
            print("MOUSEBUTTONDOWN event occured")
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()

Producción :

#Python 3.x
MOUSEBUTTONDOWN event occured

Si desea verificar qué botón del mouse está presionado, izquierdo o derecho, puede verificar los valores devueltos por el método pygame.mouse.get_pressed(). Este método devuelve tres valores, uno para cada botón del ratón.

Aquí hemos almacenado los valores devueltos en una lista. Cada botón del mouse tiene asociado un valor, 1, 2, 3, 4, 5 para el botón izquierdo del mouse, el botón central del mouse, el botón derecho del mouse, la rueda del mouse hacia arriba y la rueda del mouse hacia abajo, respectivamente.

En el siguiente código, hemos verificado en qué botón del mouse se hizo clic e imprimimos un mensaje en consecuencia. Hemos pulsado los botones izquierdo y derecho del ratón.

Código de ejemplo:

# Python 3.x
import pygame
import sys

pygame.init()
display = pygame.display.set_mode((500, 500))
while True:
    for event in pygame.event.get():
        if event.type == pygame.MOUSEBUTTONDOWN:
            mouse_presses = pygame.mouse.get_pressed()
            if mouse_presses[0]:
                print("Left mouse button pressed")
            if mouse_presses[2]:
                print("Right mouse button pressed")
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()

Producción :

#Python 3.x
Left mouse button pressed
Right mouse button pressed
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

Artículo relacionado - Pygame Function