Ejecutar aplicación externa dentro de ventana gtk
Sebastian Lara Menares
slara en udec.cl
Mie Oct 24 21:53:42 CEST 2007
Hola
jm.galvez en oneandzero.net wrote:
> Hola a todos antes de nada.
>
> Quisiera saber como puedo ejecutar una aplicación externa dentro de mi propia ventana de dialogo de gtk.
> Es decir el caso mas claro seria ejecutar "xpdf" dentro de mi propia ventana para visualizar pdf.
>
Incrustar una aplicación dentro de otra es mas complicado y no se me
ocurre como se prodría hacer sin bibliotecas especificas en la
aplicación hijo, por ejemplo gtkmozembed con el que puedes incrustar
gecko dentro de una aplicación GTK+. Para pdf's deberías ver como
funciona poppler.
Para ejecutar una aplicación externa desde una aplicación GTK+ hay
varias opciones :)
Una, y la más común, es usar os.system() pero no se recomienda. Mejor
usar el módulo subprocess[1] que permite mas control sobre la aplicación.
Te recomiendo le des una mirada al método gobject.spawn_async()[2] que
permite ejecutar la aplicación hijo de manera asincrónica (sin bloquear
el loop principal de la aplicación padre).
Saludos.
[1]: http://docs.python.org/lib/module-subprocess.html
[2]:
http://www.pygtk.org/docs/pygobject/gobject-functions.html#function-gobject--spawn-async
--
Sebastián Lara Menares
Departamento Ingeniería Eléctrica
Universidad de Concepción
Más información sobre la lista de distribución Python-es