Foros del Web » Programación para mayores de 30 ;) » Java »

¿JFrame puede devolver variable?

Estas en el tema de ¿JFrame puede devolver variable? en el foro de Java en Foros del Web. Necesito que cuando se cierre un JFrame, éste, pase un string al JFrame padre. Se pasar variables del padre al hijo mediante el constructor, pero ...
  #1 (permalink)  
Antiguo 09/03/2009, 11:12
 
Fecha de Ingreso: febrero-2008
Ubicación: Madrid
Mensajes: 474
Antigüedad: 16 años, 2 meses
Puntos: 1
Exclamación ¿JFrame puede devolver variable?

Necesito que cuando se cierre un JFrame, éste, pase un string al JFrame padre.

Se pasar variables del padre al hijo mediante el constructor, pero no en el otro sentido. ¿Un JFrame puede devolver un valor como lo hace una función? ¿Si es así, como se haría?

Gracias.
  #2 (permalink)  
Antiguo 09/03/2009, 12:46
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 6 meses
Puntos: 454
Respuesta: ¿JFrame puede devolver variable?

Hola:

No puede devolver un valor, pero sí se lo puedes pedir.

El JFrame padre debe añadir un addWindowListener() al JFrame hijo. El JFrame hijo puede tener un método getValor() que devuelva el valor deseado. Cuando el JFrame padre detecte que el JFrame hijo se ha cerrado (gracias al addWindowListener), puede pedirle dicho valor.

De todas formas, esta no es la forma correcta de hacerlo. Lo primero que debes intentar probar es usar un JOptionPane en vez de un JFrame hijo. El JOptionPane es una ventana pensada precisamente para eso, para pedir un dato y devolverlo.

Si no puedes hacerlo con un JOptionPane, puedes hacerlo con un JDialog modal. Al ser el JDialog modal, el código que lo visualiza se queda bloqueado hasta que el JDialog se oculte, por lo que podrías inmediatamente después pedirle el dato

dialogoModal.setVisible(true); // Esto se queda bloqueado hasta que se oculte el dialogo.
String valorDevuelto = dialogoModal.getValor();

En cualquier caso, una aplicación sólo debería tener un JFrame, el resto deben ser JDialogs.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 09/03/2009, 15:12
 
Fecha de Ingreso: febrero-2008
Ubicación: Madrid
Mensajes: 474
Antigüedad: 16 años, 2 meses
Puntos: 1
Respuesta: ¿JFrame puede devolver variable?

Cita:
Iniciado por chuidiang Ver Mensaje
En cualquier caso, una aplicación sólo debería tener un JFrame, el resto deben ser JDialogs.
Muchas gracias por guiarme, es que estoy perdido jeje, la ultima frase me ha gustado, no tenía ni idea de ello.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:31.