Control del teclado¶
El segundo paso consiste en hacer que nuestro juego esté atento a las pulsaciones en el teclado, actuando en consecuencia. Por ahora, gestionaremos la tecla Esc, que dará fin al juego y cerrará la ventana:
| 02CapturarTeclas.py | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | |
Creamos una propiedad del juego llamada terminar. En el bucle, preguntamos
continuamente por ella para saber cuando finalizar las iteraciones con una
sentenciabreak`
Para que tenga efecto, tenemos que ligar el evento Pulsar Tecla a la
ejecución de un método que gestione esa pulsación. La asociación se
hace mediante el método bind de la ventana (o de otro componente. Hay
que pasarle el nombre del evento, en forma de texto, y el nombre de la función
asociada.
Esta función recibe de forma automática un parámetro que representa información sobre el evento. Tratándose de un método, también recibirá una referencia a la instancia de la clase:
def gestionar_tecla(self, evento):
El evento es un objeto que tiene una propiedad con el nombre de la tecla pulsada:
if evento.keysym=='Escape':
Nombres de teclas¶
Podemos averiguar nombres de teclas con el siguiente programa:
| Nombres_teclas.py | |
|---|---|
1 2 3 4 5 6 7 8 | |
Pulsar sobre la ventana resultante. Al pulsar teclas, se mostrará el nombre de cada una en el shell de IDLE.