eventos de teclado en Python

Inigo Aldazabal Mensa inigo_aldazabal en ehu.es
Vie Nov 14 12:54:03 CET 2008


El Viernes, 14 de Noviembre de 2008 11:23, Arnau Sanchez escribió:
> Pablo Rodríguez escribió:
> > ¿Cómo podría hacer algo así en Python puro? Con input se puede hacer,
> > pero ha de ser una letra (no vale pulsar enter o espacio) y además hay
> > que pulsar enter al final.
>
> No hay una solución multiplataforma. En Windows puedes usar
> msvcrt.getch(); en *nix se tira de "curses" o se toca la configuración
> del terminal a través de "termios". Más info:
>
> http://mail.python.org/pipermail/python-list/2000-October/058188.html
>
> Más info de "curses":
>
> http://www.amk.ca/python/howto/curses/

Por ejemplo (copiopego de google):

#
import curses

class TestScreen:
    def __init__(self, scr):
        self.scr = scr
        self.scr.move(10, 5)
        self.scr.addstr('Press q to QUIT', curses.A_BOLD)


    def loop(self):
        k = None
        while k != 'q':
            k = self.scr.getkey()
            try:
                o = ord(k)
            except:
                o = '????'
            #Error.elog('test:', k, o)

def test_keys(scr):
    screen = TestScreen(scr)
    screen.loop()

if __name__ == '__main__':
     curses.wrapper(test_keys)
#

_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es