TextBuffer en gtk2

Marcos Sánchez Provencio rapto en arrakis.es
Vie Jul 18 14:31:58 CEST 2003


Hace poco puse una solución en la lista para tk, con hilos de ejecución. 
Me imagino que será parecido en gtk. ¿Lo has probado?

Daniel Ripolles (Eru) wrote:
> A ver si alguien me puede resolver este rpoblemilla que me trae de
> cabeza desde hace dias.
> 
> Tengo una interfaz en gtk2, y de entre los widgets que tengo hay uno
> llamado bfOut que es un TextBuffer. En cierto momento del programa
> quiero ejecutar un comando externo, e ir mostrando su salida, conforme
> se va generando, por el TextBuffer. Resumiendo mucho, el fragmento de
> código es este:
> 
> ** codigo python **
> bfOut.set_text('')
> command = build_command() # Me monto el comando 
> iter = bfOut.get_start_iter()
> bfOut.insert(iter,
>             "\nExecuting command %s...\n" % (command))
> p = os.popen4(command,'t',1)
> while 1:
>     line = p[1].readline()
>     if not line: break
>     print line,             # Saco la linea por la consola
>     bfOut.insert(iter,line)
> 
> ** codigo python **
> 
> Pues bien, el texto que me sale por consola sí que va saliendo línea a
> línea (el comando que ejecuto es un programa un poco lento, pero saca
> una linea cada poco y se puede ver); sin embargo, bfOut (el TextBuffer)
> solo se actualiza cuando termina el comando. He progado a meter cosas
> como gtk.main_iteration(0) y sigue sin actualizarse como debería (o
> mejor dicho, como me gustaría).
> 
> Pues eso, a ver si alguien me puede echar una mano con esto, que ya no
> sé por donde tirar.
> 
> Gracias a todos por anticipado :)
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es


------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


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