eventos de teclado en Python
Pablo Rodríguez
oinos en web.de
Dom Nov 16 11:02:46 CET 2008
Gracias, Chema, Arnau, Íñigo y Josu, por la respuesta.
Uso Linux y curses será la solución.
Gracias de nuevo,
Pablo
Inigo Aldazabal Mensa wrote:
> 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
>
_______________________________________________
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