Re: perl + canvas



El vie, 18-11-2005 a las 11:37 -0300, Alejandro Valdes Jimenez escribió:
> El vie, 18-11-2005 a las 11:25 -0300, Germán Poó Caamaño escribió:
> > El vie, 18-11-2005 a las 11:17 -0300, Alejandro Valdes Jimenez escribió:
> > > gracias... ya habia revizado esos ejemplos, excepto los de la página...
> > > sin embargo tengo otra duda.
> > > 
> > > he tenido que usar el signal_autoconnect_from_package para las señales,
> > > lo que no me gusta mucho pues debo definir las llamadas en el glade y
> > > por eso mismo no he podido pasarle un objeto determinado a la llamada.
> > 
> > Puedes utilizar:
> > $button->signal_connect (clicked => sub { print 'foo'; });
> 
> lo extraño es que se tiene que escribir toda la funcionalidad ahi, al
> parecer no se puede hacer algo como:
> 
> $button->signal_connect (clicked => una_funcion(parametros));

Estas llamando la función y el resultado se lo quieres asignar
como elemento a clicked.  Y lo que te interesa es pasar una
referencia a la función, de tal forma que se pueda ejecutar
cuando ocurra la señal clicked.

> habra que acostumbrase a meter todo el código ahi.

Te falta leer algún texto básico sobre Perl[1] :-)  Esa es la forma de 
escribir la función en línea; pero también puedes invocar a una
función pasando la referencia a el.

$button->signal_connect (clicked => \&una_funcion, $parametro);

La cantidad de parámetros es limitada, tal como lo es cuando usas la
API en C, Python o lo que sea, dado que es una señal y la señal tiene
una cantidad determinada de parámetros, algunos opcionales.

> lo intente con el glade pero nada.... asi que lo estoy haciendo como lo
> indicas arriba.

Imprimiste todo lo que recibías en @_? (hint: usa foreach).

[1]: Learning Perl y luego, Programming Perl; ambos de la serie de
     O'Reilly.  Aunque también hay buenos tutoriales en Internet.

También puedes ver:
http://gtk2-perl.sourceforge.net/doc/intro/

-- 
Germán Poó Caamaño
http://www.ubiobio.cl/~gpoo/
Concepción - Chile




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]