Fechar tela JDialog - dispose()

7 respostas
S

Pessoal, estou precisando de ajuda, hoje estava em duvida como fechar uma JDialog sobre um JFrame e me informaram para colocar o dispose(), fiz isto e naquele momento funcionou, inclusive a JDialog “encobria” a JFrame da qual eu gostaria que ela ficasse por cima, bem agora consegui fazer a JDialog ficar em cima do FJrame mas o dispose() quando acionado no JDialog ele esta fechando ambas, alguém sabe o porque ?

7 Respostas

B

Se vc tivesse dando um dispose no JFrame , eu diria que o que pode estar acontecendo e que seu JFrame esta com a propriedade defaultCloseOperation setado pra EXIT_ON_CLOSE, dai quando vc da dispose no JFrame ele fecha tudo. Agora, dando dispose no JDialog, nao sei nao, pois JDialog nao permite EXIT_ON_CLOSE, somente outros tipos como HIDE_ON_CLOSE.
Da um olhada nesas propriedades que eu citei acima, talves ajude.
T+

S

Eu deu uma olhada, como sou iniciante em java pode ser que eu esteja fazendo coisas erradas, mas a linha que cria o dialogo é esta:

Esta correta ?

S

Alô câmbio !!! alguém na escuta ? Alguém sabe se existe algum problema no meu código e que possa me ajudar ??
:cry:

B

Eu nao vi nenhum problema na inicializacao da sua Dialog. Posta um codigo exemplo ai…

S

Vc tem alguma idéia o que poderia estar ocorrendo ? Em que situação ele poderia estar fechando a aplicação como um todo e não somente a tela de Dialogo? Não seria porque estou usando o próprio JFrame da tela principal como owner da JDialogo, o que vc acha ?

Aguardo,
:?:

A

põe o código todo aí para que possamos te ajudar

J

Oi pessoal, Vocês me ajudaram muito com o dispose().
Olha, funcionou 100%. Acho que se você colocar o código todo aí, o pessoal pode ajudar.
No meu caso, coloquei dentro do actionPermormed

jButtonCriaPessoa.addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

instaciaPessoa();

dispose();
}
            } );

E o meu construtor só leva um String.
Boa Sorte.

Criado 12 de julho de 2005
Ultima resposta 17 de out. de 2006
Respostas 7
Participantes 4