Duplicação de aplicação

bom dia à todos…

Sou iniciante em java e estou com um pequeno probleminha:

Estou fazendo uma aplicação para testar a inserção de dados no Access via ODBC…
Está rodando normalmente, só que quando eu clico no botão que insere no banco, os registros são inseridos e abre outra aplicação igualzinha, mantendo a anterior…
Qual o problema? Segue o código abaixo…

import java.awt.;
import java.awt.event.
;
import javax.swing.;
import java.sql.
;
import java.lang.*;

public class Inclusao extends JFrame{


static JTextField txtnome, txtendereco, txtcidade;
private JLabel  label1, label2, label3;
private JButton insere, a;

private final static String driver="sun.jdbc.odbc.JdbcOdbcDriver";
private final static String url="jdbc:odbc:Agenda";
private final static String username="";
private final static String password="";
private Connection con;
private Statement stmt;
private ResultSet rs;
public String pegatexto;
public String pegatexto1;
public String pegatexto2;
public Inclusao()
{
     super("Inserindo dados via ODBC");

       Container c=getContentPane();
       c.setLayout(new GridLayout(4,4));

       label1=new JLabel("Nome:",SwingConstants.LEFT);
       label2=new JLabel("Endereço:",SwingConstants.LEFT);
       label3=new JLabel("Cidade:",SwingConstants.LEFT);

       txtnome=new JTextField(20);
       txtendereco=new JTextField(20);
       txtcidade=new JTextField(20);

       Icon img=new ImageIcon("img.gif");
       Icon img1=new ImageIcon("marba.gif");

       insere=new JButton("Inserir",img);
       insere.setHorizontalTextPosition(SwingConstants.RIGHT);

       a=new JButton("Pesquisar",img1);
       a.setHorizontalTextPosition(SwingConstants.RIGHT);
       a.setToolTipText("Pesquisa Registros no Banco");

       c.add(label1);
       c.add(txtnome);

       c.add(label2);
       c.add(txtendereco);

       c.add(label3);
       c.add(txtcidade);

       c.add(insere);
       c.add(a);


       Tratamento1 tratar1=new Tratamento1();
       insere.addActionListener(tratar1);


       Tratamento tratar=new Tratamento();
       a.addActionListener(tratar);



       setSize(300,100);
       show();
}


public void AbreBanco()
{
       try
       {
          Class.forName( driver );
          con= DriverManager.getConnection(url, username, password);
          stmt=con.createStatement();
          System.out.println("Conexao estabelecida com sucesso!");
          System.out.println("");
       }


       catch(ClassNotFoundException e)
       {
          System.out.println("Erro ao carregar JDBC/ODBC driver." + e);
          System.exit(1);
       }

       catch(SQLException e)
       {
          System.out.println("Nao foi possivel estasbelecer conexao!" +e);
          System.exit(1);
       }

 }


 public void gravar(String pegatexto, String pegatexto1, String pegatexto2)
 {

     pegatexto=pegatexto;
     pegatexto1=pegatexto1;
     pegatexto2=pegatexto2;
     String query="INSERT INTO Agenda(nome,endereco,cidade) values('"+pegatexto+"','"+pegatexto1+"','"+pegatexto2+"')";

    try
    {
       stmt.executeUpdate(query);
     }

     catch(SQLException e)

     {
     System.out.println("Erro ao inserir dados" +e);
     }

   }





public class Tratamento implements ActionListener
{
        public void actionPerformed(ActionEvent e)
        {
           txtnome.setText("Teste de Botão");
           txtendereco.setText("Teste 2");
           txtcidade.setText("jjjjjj");


        }
 }

public class Tratamento1 implements ActionListener
{
       public void actionPerformed(ActionEvent e)
        {
               String pegatexto=txtnome.getText();
               String pegatexto1=txtendereco.getText();
               String pegatexto2=txtcidade.getText();
               Inclusao abrir=new Inclusao();
               abrir.AbreBanco();
               abrir.gravar(pegatexto, pegatexto1, pegatexto2);



        }
}



public static void main(String args[]){

  Inclusao app=new Inclusao();
  app.addWindowListener( new WindowAdapter()

{
         public void windowClosing( WindowEvent e)
{
 System.exit(1);
}

 });

}

Desde já agradeço…

Essa é a classe que trata os eventos do seu botão Inserir

public class Tratamento1 implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String pegatexto=txtnome.getText();
String pegatexto1=txtendereco.getText();
String pegatexto2=txtcidade.getText();
Inclusao abrir=new Inclusao(); // aqui vc chama o método principal de sua classe Inclusao, ou seja vc chama outra tela igual a que vc abriuabrir.AbreBanco();
abrir.gravar(pegatexto, pegatexto1, pegatexto2);
}
}

Coloque este código dentro da classe Inclusao:

//DNeo
Insere.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent event)
{
String pegatexto=txtnome.getText();
String pegatexto1=txtendereco.getText();
String pegatexto2=txtcidade.getText();
AbreBanco();
gravar(pegatexto, pegatexto1, pegatexto2);
} //fim do actionPerformed
}// fim ActionListener
); //fim do addActionListener do botão Insere

Usem a tag [‘code] [’/code] fica muito mais legível o post. Vejam:

public class SuaClasse {
  public SuaClasse() {
  }
}

Foi mal !!!
Não sabia desta tag do fórum.

Valeu, vou postar só deste jeito agora !!!