Java - Cerrar frame con un boton

 
Vista:
sin imagen de perfil

Cerrar frame con un boton

Publicado por Pablo Cabañín (51 intervenciones) el 18/08/2006 19:38:00
Si en un frame tengo un boton "Cerrar" y uso el addActionListener, luego cuando tengo que ejecutar la accion que debo hacer ??

Me gustaria algo tipo : JFrame.close() o algo asi...

Gracias
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

RE:Cerrar frame con un boton

Publicado por sphinx101 (57 intervenciones) el 18/08/2006 20:00:12
JFrame myFrame=new JFrame("mi Frame");
JButton btnCerrar=new JButton("Cerrar");
myFrame.add(btnCerrar);
btnCerrar.addActionListener(new AbstractAction(){
public void actionPerformed(ActionEvent e){
myFrame.setVisible(false);
myFrame.dispose();
}
});
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
sin imagen de perfil

RE:Cerrar frame con un boton

Publicado por Pablo CD (51 intervenciones) el 18/08/2006 21:31:25
Ahi alguna forma de hacer que el dispose cierre la ventana que tiene el focus en ese momento ??

En vez de frame.dispose() hacer algo como:

(inventado) --> JFrame.getfocusedWindow.dispose()

Existe algo asi ??
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
sin imagen de perfil

RE:Cerrar frame con un boton

Publicado por chuidiang (950 intervenciones) el 18/08/2006 22:29:30
Hola:

Para cerrra la ventana puedes usar

frame.dispose()

o bien

frame.setVisible(false)

La primera opción destruye la ventana, por lo que es útil si esa ventana no la necesitas más (aunque si guardas una variable con ella y la vuelves a hacer visible posiblemente funcione). La segunda opción simplemente la hace invisible, pero puedes volver a hacerla visible.

En cuanto a obtener la ventana del foco, no lo he probado nunca, pero puedes probar esto

Window ventana = FocusManager.getCurrentManager().getActiveWindow();

Luego, con ventana.setVisble(false) la ocultas.

Se bueno.
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
sin imagen de perfil

RE:Cerrar frame con un boton

Publicado por Pablo CD (51 intervenciones) el 18/08/2006 23:15:23
Gracias, me ha servido de gran ayuda.

Una cosa....

es imposible que se me cierre otra ventana usando esto no??
es decir, la ventana activa cuando pulso el botón no puede ser otra ventana diferente no
(si hubiera algun caso excepcional dimelo si lo sabes)
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
sin imagen de perfil

RE:Cerrar frame con un boton

Publicado por chuidiang (950 intervenciones) el 19/08/2006 09:08:00
Hola:

Tendrás que hacer la prueba. Es posible que al pulsar el botón se convierta en ventana activa justo la que tiene el botón....

Se bueno.
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
sin imagen de perfil

RE:Cerrar frame con un boton

Publicado por Pablo (51 intervenciones) el 19/08/2006 13:33:12
Por las pruebas que he hecho (no muchas) parece que funciona.
Al menos en teoria la ventana activa deberia ser justo en la que acabas de efectuar una accion, pues en ese momento obtiene el focus (pura teoria que en esto de la informática no tiene porque ser así, ya que si en la implementacion de java no es asi pues puede pasar cualquier cosa).
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