Habilitar Botão em outro form e Fechar banco quando uso o X do form

Olá pessoal, tenho certeza que o que quero já deve ter de “mãozada” no fórum, mas, sincermanete olhei mais do que podia e menos do que queria e não achei.

Primeira dúvida…

tenho duas forms.

form1 é [color=red]main[/color] tem um botão habilitado.

quando clico no botão do form1, ele desabilita e da focu no form2, que tmbm possui um botão.

Como, quando fechar o form2, via botão, ele habilite o botão do form1.

Segunda Dúvida…

Tenho um form principal, quero fechar no botão X do form. Como fechar os bancos abertos quando isto acontece???

Desculpe as perguntas, mas, estou vindo do delphi e fazia isto com facilidade lá, mas aqui to “apanhando feito boi na roça”.

Vlw gente

Primeira Duvida:

//codigo que vai fechar o seu db
   this.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosed(WindowEvent e) {
                //codigo pra vc fechar o seu db
            }
        });
//codigo do botão
 private void btnAbrirActionPerformed(java.awt.event.ActionEvent evt) {                                         
        // TODO add your handling code here:
            new Frm2().setVisible(true);
            btnAbrir.setEnabled(false);
}

Segunda Duvida:
No segundo form coloca assim:

setDefaultCloseOperation(DISPOSE_ON_CLOSE);
        this.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosed(WindowEvent e) {
                Frm1.btnAbrir.setEnabled(true);
            }
        });

Detalhe que pra esse codigo funcionar o btnAbrir precisa ser static.

Era isso?
abrss

Fala Artur, tudo bom???

obrigado por responder.

Acho que não me expressei direito.

No Form1 tem um botão, segue o código. Observe que ele mesmo se desabilita.

private void jBProcurarActionPerformed(java.awt.event.ActionEvent evt) {
        //
        // Faz a Conexão com o Banco
        if (con.conectar("localhost", "root", "")) {
            jBAdicionar.setEnabled(false);
            jBProcurar.setEnabled(false);
            //
            // Chama a Janela Pesquisar Usuários
            new PesquisarUsuarios(con).setVisible(true); // chama o form2
        } else {
            // Mostra Janela de Erro Informando Sem Conexão
            JOptionPane.showMessageDialog(null, "Não Foi Possível a Conexão com o Banco.");

        }
}

No form2, no botão dele está o seguinte código:

    private void jBCarregaRegistroActionPerformed(java.awt.event.ActionEvent evt) {
        
        this.dispose(); // aqui fecha o form2
    }

O que preciso é que ele habilite o botão no form1 quando sair do form2.

Na segunda dúvida, seria no form principal. Eu gostaria de optar por fechar o aplicativo no botão X do windows. Acho que isto está respondido.

Vlw

deciorocha,
Quando vc fala “preciso é que ele habilite o botão no form1 quando sair do form2.”
Você quer abilitar o botão no form1 quando o usuario aperta o X no form2 certo?

Pra fazer isso coloca no form2 assim:

        //adiciona um listener no form2, ai quando o usuario aperta o X vai executar o codigo abaixo
        this.addWindowListener(new WindowAdapter() {  
            @Override  
            public void windowClosed(WindowEvent e) {  
                botaoForm1.setEnable(true);
            }  
        });  

era isso?