Netbeans: Ajuda para fechar um Frame apenas

Olá a todos, sou novo aqui no Portal e espero que possam me ajudar.Tenho um programa que envolve 2 frames e o meu problema é que quando mando fechar um frame secundário (de auxílio), ele fecha também o príncipal, o que eu não quero. Eu sei que a solução para este problema é simples, mas eu não a encontrei.

O que já fiz foi o seguinte:

FrameAjuda fa = new FrameAjuda(); fa.setDefaultCloseOperation(fa.DISPOSE_ON_CLOSE); fa.dispose();

Só que este código não fecha nem o frame secundário, e quando ponho “System.exit(0)”, O frame secundário e o principal são fechados.

Ficarei grato pela atenção de todos.

Opa!
O System.exit(0) realmente fecha todos os frames…

Se você está usando o Matisse que é o GUI Builder do Netbeans você precisa selecionar o frame, e na tabela de propriedade vai aparecer a opção “default close operaton” deve estar marcada como EXIT_ON_CLOSE, vocÊ tem que mudar essa opção para DISPOSE e vai funcionar

:wink:

Tive progresso finalmente. Obrigado colega.

Agora tenho mais uma dúvida. Criei um botão “Fechar” com o seguinte código:

FrameAjuda fa = new FrameAjuda(); fa.setDefaultCloseOperation(fa.DISPOSE_ON_CLOSE); fa.dispose();

Para quando este for clicado, fechar somente esse frame secundário, o que não esta acontecendo. O frame secundário só é fechado quando clico no “X” no canto superior direito do frame. Como faço para realizar essa operação?

Mais uma vez obrigado pela ajuda.

Depende de comoestá sua classe… O Netbeans costuma estender JFrame, então você só precisa chamar this.dispose(); dentro do código do botão fechar.