Finalizar um JFrame

Galera, lá vem bomba (pra mim)

 Janela minhaJanela = new Janela();
 janela.show();

janela é minha classe que extends JFrame

dentro da classe janela preciso fechá-la de modo que a meu objeto
minhaJanela fique == null;

Tem como fazer isso?
Alguém não entendeu e quer que eu explique novamente?

Obrigado.

Humm… Não entendi :?
Vc quer fechar a janela?

Se o que vc quer com isso é liberar os recursos utilizados pela janela ao fechá-la, vc poderia fazer o seguinte:

minhaJanela.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

Na minha santa ignorância, pelo que eu entendo, o dispose faz com que todos os recursos usados pelo objeto sejam liberados para a JVM.

É isso que vc procurava?

Espero ter ajudado

Se for o caso, pode ser feito assim tbm:

Bom, vamos lá:

Classe A:

Janela minhaJanela = new Janela();
minhaJanela.show();

Classe Janela:

this.dispose();

Classe A:

minhaJanela == null; (o que não está acontecendo)

Entenderam? Preciso justamente liberar a memória e o dispose não o está fazendo.

Obrigado.

tenta ai

System.exit(0);

[quote=fsf]tenta ai

System.exit(0);

[/quote]
:shock:
Isso irá matar a aplicação…

[quote=“API-mehtod dipose() from java.awt.Window”]Releases all of the native screen resources used by this Window, its subcomponents, and all of its owned children. That is, the resources for these Components will be destroyed, any memory they consume will be returned to the OS, and they will be marked as undisplayable.

The Window and its subcomponents can be made displayable again by rebuilding the native resources with a subsequent call to pack or show. The states of the recreated Window and its subcomponents will be identical to the states of these objects at the point where the Window was disposed (not accounting for additional modifications between those actions).

Note: When the last displayable window within the Java virtual machine (VM) is disposed of, the VM may terminate. See AWT Threading Issues for more information. [/quote]

Logo, vc não perde o objeto, ele apenas esta escondido, mas a variavel ainda está referenciando ele. Para “limpar” o resto dele, ai sim vc deveria tirar todas as referencias dessa janela de qualquer variavel, setando pra nulo. :wink:

flw!

No caso algo do tipo…

Janela minhaJanela = new Janela();
minhaJanela.setDefaultClosedAction(JFrame.EXIT_ON_CLOSE);

Janela minhaJanela = null;

tentei… :smiley:

A minhaJanela é uma “filha”, ou seja, não é a principal do sistema.

Se eu utilizar seu EXIT_ON_CLOSE quando a fecho fecho o sistema todo. Naum posso fazer isso.

Continuo na dúvida… :cry:

[quote=fzampa][quote]
minhaJanela.setDefaultClosedAction(JFrame.EXIT_ON_CLOSE);
[/quote]

A minhaJanela é uma “filha”, ou seja, não é a principal do sistema.

Se eu utilizar seu EXIT_ON_CLOSE quando a fecho fecho o sistema todo. Naum posso fazer isso.

Continuo na dúvida… :cry: [/quote]

estou com um problema parecido…

tenho uma tela1 que tem um botao que chama a tela2…
preciso que quando a tela2 fosse fechada… ela fechasse msm, como se nunca tivesse sido aberta…
se eu utilizo o EXIT_ON_CLOSE ele fecha o sistema inteiro…

alguem tem ideia do q eu posso fazer!?