En este artículo, aprenderemos cómo podemos manejar las entradas del mouse en el módulo arcade en Python.
En Arcade, puede manejar fácilmente las entradas del mouse usando estas funciones:
en_mouse_motion():
Sintaxis: on_mouse_motion(x, y, dx, dy)
Parámetros:
- x : coordenada x
- y : coordenada y
- dx : cambio en la coordenada x
- dy : cambio en la coordenada y
on_mouse_press():
Sintaxis: on_mouse_press (x, y, botón, modificadores)
Parámetros:
- x : coordenada x
- y : coordenada y
- boton: boton que se presiona
- modificadores : Bitwise ‘y’ de todos los modificadores (shift, ctrl, num lock) presionados durante este evento.
Se llamará a la función on_mouse_motion() cada vez que el usuario mueva el mouse. De manera similar, se llamará a on_mouse_press() cada vez que un usuario presione un botón del mouse.
Movimiento usando entradas de mouse
Aquí crearemos un programa simple usando el módulo arcade para mover nuestro personaje usando las entradas del mouse.
En el siguiente ejemplo, vamos a crear una clase MainGame(). Dentro de esta clase primero, inicializaremos las coordenadas x e y iniciales del jugador. Luego crearemos tres funciones dentro de esta clase.
- on_draw():- Dentro de esta función, comenzaremos el renderizado usando arcade.start_render() y luego dibujaremos nuestro reproductor.
- on_mouse_motion(): – Esta función se llamará cada vez que el usuario mueva el mouse. Dentro de esta función, cambiaremos las coordenadas x e y del jugador.
A continuación se muestra la implementación:
Python3
# Importing arcade module import arcade # Creating MainGame class class MainGame(arcade.Window): def __init__(self): super().__init__(600, 600, title="Keyboard Inputs") # Starting location of player self.x = 100 self.y = 100 # Creating on_draw() function to draw on the screen def on_draw(self): arcade.start_render() # Drawing our player arcade.draw_circle_filled(self.x, self.y, 25, arcade.color.GREEN) # Creating function to check the position # of the mouse def on_mouse_motion(self, x, y, dx, dy): """ Called whenever the mouse moves. """ self.x = x self.y = y # Calling MainGame class MainGame() arcade.run()
Producción:
Manejar los clics del mouse
Ahora, para manejar los clics del mouse, vamos a crear una nueva función llamada «on_mouse_press». Esta función se llamará cada vez que el usuario haga clic en un botón del mouse.
Python3
# Importing arcade module import arcade # Creating MainGame class class MainGame(arcade.Window): def __init__(self): super().__init__(600, 600, title="Keyboard Inputs") # Starting location of player self.x = 100 self.y = 100 # Creating on_draw() function to draw on the screen def on_draw(self): arcade.start_render() # Drawing our player arcade.draw_circle_filled(self.x, self.y,25, arcade.color.GREEN ) # Creating function to check the position # of the mouse def on_mouse_motion(self, x, y, dx, dy): """ Called whenever the mouse moves. """ self.x = x self.y = y # Creating function to check the mouse clicks def on_mouse_press(self, x, y, button, modifiers): print("Mouse button is pressed") # Calling MainGame class MainGame() arcade.run()
Producción:
Publicación traducida automáticamente
Artículo escrito por imranalam21510 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA