Dispose dentro do metodo tipo static

3 respostas
D

Bom dia,

Tem como chamar o dispose() para fechar um JDialog dentro de um metodo static. :?:

Tenho um JFrame que chama um JDialog que chama um JInternalFrame que e adicionado dentro de um JDesktoPane, quando finalizo a operação, as telas são fechadas (menos o JFrame) em cascata, fecho o JInternalFrame e passo os dados para o metodo no JDialog ( dlg.dadosCliente() ), que pega esses dados, manipula e passa para o metodo que e static do JFrame ( ifrm.dadosVenda() ) e fecha o JDialog.
Problema: O metodo dispose para a janela JDialog não e static.
Tentativa: Coloquei o dispose() no click de um JButton (static) e chamei-o dentro do metodo static ( btn.doClick() ). Na primeira chamada o JDialog fecha, porém quando chamo e tento fechar de novo, não fecha.

Como vocês fecham janelas em cascata?

[]'s, Daniel

3 Respostas

danieldestro

Você precisa tera referência para o objeto criado de JDialog.

D

Daniel, será que voce poderia me explicar melhor em como fazer essa referência ao objeto criado de JDialog para finalizar as telas em cascata (JDialog + JInternalFrame), passando dados entre elas. :oops:

Obrigado,
Daniel

danieldestro

É só você passar as referências (objetos) para a tela que deverá fechar as telas que precisar, não tem nada demais nisso.

Exemplo:

dialog = new JDialog();
janelaQueVaiFecharTodoMundo.setDialogAFechar( dialog );

Criado 9 de abril de 2005
Ultima resposta 11 de abr. de 2005
Respostas 3
Participantes 2