Señales en py-gtk
Marco Antonio Islas Cruz
markuz en islascruz.org
Vie Nov 2 17:23:19 CET 2007
Hola, antes de crear una senial debes asegurarte de que no haya sido
creada antes.
if gobject.signal_lookup("data_entered",self) == 0:
gobject.signal_new("data_entered",
Ventana,
gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE, ())
On Fri, 2007-11-02 at 10:11 -0500, Jorge OP wrote:
> Hola, estoy creando una clase que utiliza una señal personalizada para
> comunicarse y tengo un problema que espero me puedan ayudar a solucionar.
> Trato de explicar el contexto:
>
> - Mi programa crea inicialmente un menu donde el usuario debe escoger una
> opción.
> - El usuario escoje y mi programa lanza una ventana que usa señales
> personalizadas para comunicarse.
> - La ventana funciona muy bien, hace lo que debe hacer y termina regresando
> al menu inicial
> - Si el usuario vuelve a escoger la misma opcion, ya no vuelve a funcionar y
> se cierra el programa.
>
> La señal la estoy creando asi:
>
> class Ventana(gtk.Window):
>
> def __init__(self):
> ## Defino la ventana, y sus controles
> ## Creo la nueva señal:
>
> gobject.signal_new("data_entered", Ventana, gobject.SIGNAL_RUN_LAST,
> gobject.TYPE_NONE, ())
>
> ## Aqui viene el resto de la definicion de la clase......
>
> Como dije arriba, la primera vez que se ejecuta funciona muy bien. El
> problema es la segunda vez que me sale un warning como este:
>
> Warning: gsignal.c:1251: signal "data_entered" already exists in the
> `GtkWindow' class ancestry
>
> y luego termina con un error:
>
> RuntimeError: could not create signal
>
> Lo que entiendo es que la nueva señal (data_entered) la está asignando a la
> clase padre GtkWindow y no a mi clase Ventana (a pesar que en la funcion
> signal_new yo le indico lo contrario). Qué puede estar pasando? Cualquier
> idea o ayuda será bienvenida.
>
> Muchas gracias
> _______________________________________________
> Lista de correo Python-es
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
--
<--Linux... Because I'm Free-->
Marco Antonio Islas Cruz
"Markuz"
Linux User #280229
markuz en islascruz.org
markuz en unixmexico.org
markuz en linuxpozarica.com
marco.islas en gmail.com
islacruz en yahoo.com
http://www.islascruz.org
http://sourceforge.net/projects/gpkg/
http://www.linuxpozarica.com
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://mail.python.org/pipermail/python-es/attachments/20071102/49958700/attachment.pgp>
------------ próxima parte ------------
_______________________________________________
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