Fechar Formulário!

E Aí pessoal!

Vou fazer uma pergunta que está me tirando o sono mas muito (eu acho) vão tirar de letra.
Como faço para fechar um Form usando um JButton?
Sim…não consigo implementar um Botão fechar em um formulário.

Quem puder me ajudar…
Obrigado

Se vc tiver:JFrame x = new JFrame,
vc pode fazer:
-x.hide() //Se vc quer apenas esconder o formulario
-x.dispose() //Se quiser destrui-lo

O evento do Botão tem que ser tratado da seguinte forma:

[code]
public class Teste implements ActionListener{

JFrame formulario;

public void actionPerformed(ActionEvent evt){
if(evt.getSource() == “nomeDoBotao”){
formulario.hide(); //ou formulario.dispose();
}
}
}[/code]

Ajudou??

Ah,seu botao ficaria assim:
JButton fecha = new JButton(“FECHAR”);
fecha.addActionListener(this);

Valeu
valeu
valeu mesmo cara.
Muito obrigado!!! :smiley:

amigos, pq que nesse trecho de código:

mniSair.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent evt){ VerCliente verc2 = new VerCliente(); verc2.setVisible(false); } });

ele não esconde o frame. ja que no J2se 1.4.2 ele funciona.

no J2SE 5.0 não.

açlguém me ajuda.

p.s.: tentei usar dispose(); disable(); e nada.

JP, essa classe VerCliente é a sua classe atual em execução???(Deve ser pois não teria sentindo instanciar algo para esconder em seguida sem mostrar…)
Pq se for, vc estará criando uma outra instância dela(o que é totalmente disnecessário), bastanto chamar(nessa ordem) :

setVisible(false); dispose(); dentro desse actionPerformed…

Vou testar

[quote=Houte66]Se vc tiver:JFrame x = new JFrame,
vc pode fazer:
-x.hide() //Se vc quer apenas esconder o formulario
-x.dispose() //Se quiser destrui-lo
[/quote]

Este forma do dispose libera memória alocada pelo objeto?

Testei ele… com um aplicativo swing com jframe e jinternalframe e acrescentei umas 50 janelas e ao fechar todas as janelas a memória continuava com mesmo valor com todas abertas. Como solucionar?