Ciao a tutti!
Sto scrivendo il codice per due frames, uno apre l'altro, però vorrei che quando si apre il secondo (tramite il click del mouse su un JButton) il primo si chiuda. Ho già provato a chiedere consiglio ma non riesco a far si che ciò accada, devo aver sbagliato a capire qualche concetto...
codice:
import Frame3.*;

import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.*;
import java.awt.*;

public class Accesso extends JFrame {
    private static final long serialVersionUID = 1L;
	public Frame3 reale;   // Un riferimento alla finestra secondaria

...

//JButton e suo ricevitore
		impostaLimite(limite,0,2,2,1,0,50); // Pulsante
		limite.fill = GridBagConstraints.NONE;
		limite.anchor = GridBagConstraints.CENTER;

		grigliaAvanzata.setConstraints(pulsante,limite);

		Receiver1 receiver1 = new Receiver1();//(attenzione alla cronologia) creo l'ascoltatore
		new Receiver1(this);
			pulsante.addActionListener(receiver1);//lo associo al JButton
			pannello.add(pulsante);//includo il JButton nel pannello

				setContentPane(pannello); // rendo il pannello parte del frame
				setVisible(true); // Visualizzo il tutto!
	}

    class Receiver1 implements ActionListener {

	    private Accesso a;
		    public Receiver1(Accesso a) {
		        this.a = a;
		    }
	public void actionPerformed(ActionEvent e) {

      reale = new Frame3();
      reale.setVisible( true );
	a.setVisible(false);
			}
		}

	public static void main(String argv[]) {

		Accesso nf = new Accesso();
	}
}
Qualcuno sa spiegarmi dove sbaglio?
Vi ringrazio anticipatamente!