Python - Comunicacion entre funcion y main principal en gtk

   
Vista:

Comunicacion entre funcion y main principal en gtk

Publicado por Francisco Javier (7 intervenciones) el 26/02/2014 18:16:25
Hola a todos, es mi primer mensaje al foro y llevo poco tiempo con python, asi que a ver si se explicarme.

Estoy haciendo un programa con gtk, y cuando pulso un boton, corre su funcion, pero quiero que me retorne un dato y no se como hacerlo, pongo un pequeño ejemplo:
1
2
3
4
5
6
7
8
9
10
def funcion_boton (self):
    mensaje = IrcCliente()
 
 
def main():
    w = gtk.Window()
    bla bla bla...
 
    btb1.connect("clicked", funcion_boton)
   # aqui quiero hacer uso de "mensaje"

Saludos y gracias por adelantado :) , sierra21
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Comunicacion entre funcion y main principal en gtk

Publicado por xve (1229 intervenciones) el 27/02/2014 07:50:37
Hola Francisco, no te entiendo muy bien... quieres hacer uso de una variable definida dentro de otra función?

Para que te funcione, tendrías que hacer algo así:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
mensaje = ""
 
def funcion_boton (self):
    global mensaje  # esta linea es necesaria unicamente si vas a modificar la
                    # variable. Para leer no es necesario
    mensaje = IrcCliente()
 
 
def main():
    w = gtk.Window()
    bla bla bla...
 
    btb1.connect("clicked", funcion_boton)
    # aqui quiero hacer uso de "mensaje"

Coméntanos si es esto, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Comunicacion entre funcion y main principal en gtk

Publicado por Francisco Javier (7 intervenciones) el 27/02/2014 16:39:06
Siiii, efectivamente es lo que necesitaba, muchas gracias, resuelto ese problema...

Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar