Interacción con el teclado en Processing
En esta práctica vamos a aprender cómo podemos actuar en función de eventos que se produzcan en nuestro teclado.
Para saber si una tecla fue presionada podemos utilizar la variable booleana keyPressed , que devuelve el valor true si alguna tecla fue plsada y false si no se pulsó ninguna. Por otro lado, tenemos la variable de estado key, que nos devuelve el valor de la última tecla pulsada. La variable key se suele utilizar cuando utilizamos teclas de letras y números, mientras que keyCode se utiliza cuando utilizamos teclas de símbolos y caracteres especiales (SHIFT, CTRL, UP, DOWN, etc). También es posible implementar las funciones keyPressed() y keyReleased() que serán invocadas cada vez que se presione o suelte una tecla respectivamente.
Veamos algunos ejemplos para familiarizarnos con estas funciones:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpALm4frLNOEpVegM9w5n0izUOl3RR8UbEL8E1-5knnuc5WqzJuPNdSuZz0aRdTQtORHQQt_F9GbQN8Ho8OVJVYCXVfZOXbQj1T-3B1NHbngMQaCd8JRUINFmgSiTTAJj0mU63sIWQ_J8/s1600/885.png)
Este ejemplo nos muestra por la consola del IDE la tecla que vamos pulsando.
Otro ejemplo:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-L0UQuGgqgxfUY78Vh11PKumiDDS4wraScfzWZ-AI8-Lg5UKbr3tLZ9udtt1vGyeeoMLRPhYcOlkpjbA04foD7mqH2Y03kcCv1PXPNwXUVF142ZGi5Cfoo2onSVcuu9atg-ed0CySTlc/s320/Sin+t%25C3%25ADtulo.png)
Con este ejemplo, si pulsamos la tecla de la “r”, pintará un círculo rojo, si pulsamos la tecla de la “g”, pintará un círculo verde, y si pulsamos la tecla de la “b”, pintará un círculo azul.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqiyBMmYnmj9TTQHLurh3R0OCqcJfSzYbUfDoeiwP7QwmSJidELD8mSOz5ElJ4m19NbUXumo69Pm5OgwlOsTt9wfKxxDOdm0mAT8ufI_19XYmpppKSUGSCVldhZnbMiPDJn05-u5JaGAw/s320/Sin+t%25C3%25ADtulo.png)
Siguiente ejemplo:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQh-1LxZ_HKV74C05QhlwDoDlfGzG6UDjMcwZ2JbMAXO0YQx75jWVN2F5yDWIb1tg4Drr32_pIMrptWRHT1bZ-8h37XeC8rts6wFrRjGs2iNpcsQWTsVz22_nkITJ2C8gX1L8FADnFvZ0/s320/Sin+t%25C3%25ADtulo.png)
Con este código averiguamos el código de cualquier tecla de función. Esto nos servirá para el siguiente ejemplo, donde vamos a controlar la posición de un círculo con las teclas de flechas (izq, der, arriba y abajo).
Si lo ejecutamos, veremos que los códigos son:
Flecha DERECHA: 39
Flecha IZQUIERDA: 37
Flecha ARRIBA: 38
Flecha ABAJO: 40
Ahora vamos con otro ejemplo:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKSpllpvfFBjOp3-qf1SR7WbwC0wxrJVKHbCUH5MYYz25T3fkNU7wYqjkw22UwHLQIIUxP4dz6kWqScShoAW-GQ2tNPK2wVJG37D00ZjdtB8HJbHD6VNVbB7L9QJKKTF_C-8tqreMhsJU/s400/Sin+t%25C3%25ADtulo.png)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEil2Gwsl5x8lBwixNUcub5HSAGbsaTKH8WudLj3WPc2VDadCtGy7dweD4i8WtI-FHb4F-iat5aUXx-PVHNr2zIn0Jm51DHBQdsotsHbZVXz3xbrrA0kXQd7lMtuoIRyROU_wXZw6VZkZCQ/s1600/Sin+t%25C3%25ADtulo.png)
Lo que hemos hecho en este ejemplo es controlar el desplazamiento de un círculo hacia arriba, abajo, irquierda y derecha, pero sin salir del lienzo.
No hace falta que subáis tantas capturas de código, podéis explicar lo que habéis hecho y poner el resultado final para que se vea. Por favor, reducid al máximo las capturas de código.
ResponderEliminar