Resize de terminal con curses..
Lionel Iturri
lionel en lisistemas.com.ar
Mie Mar 12 01:37:57 CET 2008
Buenas, acá tengo una duda y ya agote todos los recursos para ver que
puede ser. El tema es así, tengo una venta con un recuadro y tiene que
acomodarse al tamaño de la terminal, no suena a nada complicado, pero
hace cosas muy raras cuando se achica desaparece el contenido y cuando
se agranda genera mal el recuadro.
Adjunto fuente y agradezco cualquier ayuda...
Saludos y gracias....
Lionel Iturri
-------------------------------------------------------------------------------
#!/usr/bin/python
import curses
import sys, time, signal
scr = None
win = None
def Render(w):
w.clear()
w.box(curses.ACS_VLINE, curses.ACS_HLINE)
w.addstr(10,10, ' Size: %d, %d ' % ( w.getmaxyx()))
w.refresh()
def Resize(sig, frame):
global scr, win
while 1:
try: curses.endwin(); break
except: time.sleep(1)
scr.refresh()
Render(win)
def main():
global scr, win
scr = curses.initscr()
scr.refresh()
win = curses.newwin(0, 0, 0, 0)
Render(win)
scr.refresh()
signal.signal(signal.SIGWINCH, Resize)
while True:
Key=scr.getch()
if Key == ord('q'):
sys.exit()
if __name__ == "__main__":
try:
main()
except SystemExit:
curses.endwin()
except Exception:
curses.endwin()
import traceback
traceback.print_exc()
_______________________________________________
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