Chodzi o to żeby po kliknięci w zakładkę Sprzedaż a później znów w sprzedaż otworzyło mi się to drugie okno. Ponieważ w tym drugim oknie chce mieć wszystkie rzeczy dotyczące właśnie sprzedaży itp. Chodzi o to, że chcę aby każdy przycisk otwierał tak jakby oddzielny program w jednym całym dużym programie. Mam nadzieję, że jasno to wszystko opisałem. Bardzo proszę o pomoc.
Zrobiłem tak. Więc to jest pierwsza klasa.Klasa główna czyli interfejs mojego programu:

package OknoDial;

import javax.swing.*;
import java.awt.*;
import java.awt.Event.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.font.*;
import java.awt.geom.*;

import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;

public class Main
{

    public static void main(String[] args)
    {
            Okno ramka = new Okno();
            ramka.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE);
            ramka.setVisible(true);
    }


}
class Okno extends JFrame
{
    public Okno()
    {
        //Tworze menu dodane do ramki
        JMenuBar pasekm = new JMenuBar();
        setJMenuBar(pasekm);

        // dodaje do menu zakladki

        JMenu sPlik = new JMenu("Sprzedaż");
        sPlik.addActionListener((ActionListener) new ActionListener()
        {
            public void actionPerformed(ActionEvent zdarzenieSprz)
            {
                if(okno == null)
                    okno = new OknoSprzd(Okno.this);
                okno.setVisible(true);
            }
        });
        pasekm.add(sPlik);
        sPlik.setMnemonic('S');

        JMenu magPlik = new JMenu("Magazyn");
        pasekm.add(magPlik);
        magPlik.setMnemonic('M');

        JMenu adminPlik = new JMenu("Administracja");
        pasekm.add(adminPlik);
        adminPlik.setMnemonic('A');

        JMenu raportPlik = new JMenu("Raporty");
        pasekm.add(raportPlik);
        raportPlik.setMnemonic('R');

        JMenu zamknijPlik = new JMenu("Zamknij");
        pasekm.add(zamknijPlik);
        zamknijPlik.setMnemonic('Z');


        // dodaje podzakladki do zakladki sprzedaz
        // zakladka sprzedaz S
        JMenuItem elemOtworzS = new JMenuItem("Sprzedaż");
        sPlik.add(elemOtworzS);
        elemOtworzS.setMnemonic('R');

        //Zaklaka lista paragonow i faktu L
        JMenuItem elemOtworzL = new JMenuItem("Lista Paragonów");
        sPlik.add(elemOtworzL);
        elemOtworzL.setMnemonic('L');

        //Zakładka zwrotów ZW
        JMenuItem elemOtworzZW= new JMenuItem("Zwroty");
        sPlik.add(elemOtworzZW);
        elemOtworzZW.setMnemonic('Z');
        sPlik.addSeparator();
        sPlik.addSeparator();

        //Zakładka klienci KL
        JMenuItem elemOtworzKL = new JMenuItem("Klienci");
        sPlik.add(elemOtworzKL);
        elemOtworzKL.setMnemonic('K');

        //Zakładka Saldo bieżące
        JMenuItem elemOtworzSB = new JMenuItem("Saldo Bieżące");
        sPlik.add(elemOtworzSB);
        elemOtworzSB.setMnemonic('B');

        //Dodaje zakladki do menu magazyn
        //zakladka stan magazynu LT
        JMenuItem elemOtworzLT = new JMenuItem("Lista Towarów");
        magPlik.add(elemOtworzLT);
        elemOtworzLT.setMnemonic('L');

        //Zakladka operacji magazynowych OM
        JMenuItem elemOtworzOM = new JMenuItem("Operacje Magazynowe");
        magPlik.add(elemOtworzOM);
        elemOtworzOM.setMnemonic('O');

        //Zakładka przyjęcia planowanePP
        JMenuItem elemOtworzPP = new JMenuItem("Przyjęcia planowane");
        magPlik.add(elemOtworzPP);
        elemOtworzPP.setMnemonic('y');
        magPlik.addSeparator();
        magPlik.addSeparator();

        //Zakładka inwentaryzacji Inwent
        JMenuItem elemInwent= new JMenuItem("Inwentaryzacja");
        magPlik.add(elemInwent);
        elemInwent.setMnemonic('I');

        //Dodaje zakładki do menu Administracja
        // Zakładka administracji ZM
        JMenuItem elemOtworzZM = new JMenuItem("Zmiana");
        adminPlik.add(elemOtworzZM);
        elemOtworzZM.setMnemonic('Z');
        adminPlik.addSeparator();
        adminPlik.addSeparator();

        //Zakładka menu zadatek + podmenu
        JMenu menuZadatek = new JMenu ("Zadatek");
        menuZadatek.setMnemonic('a');
        adminPlik.add(menuZadatek);
        JMenuItem elemZadKG = new JMenuItem("Zadatek KG");
        menuZadatek.add(elemZadKG);
        menuZadatek.setMnemonic('G');
        JMenuItem elemZadKK = new JMenuItem("Zadatek KK");
        menuZadatek.add(elemZadKK);
        menuZadatek.setMnemonic('K');
        menuZadatek.addSeparator();
        menuZadatek.addSeparator();
        JMenuItem elemZwrotKG = new JMenuItem("Zwrot zadatek KG");
        menuZadatek.add(elemZwrotKG);
        elemZwrotKG.setMnemonic('w');
        JMenuItem elemZwrotKK = new JMenuItem("Zwrot zadatek KK");
        menuZadatek.add(elemZwrotKK);
        menuZadatek.setMnemonic('d');


        //Zakładka konwoju
        JMenuItem elemKonwoj = new JMenuItem("Konwój");
        adminPlik.add(elemKonwoj);
        elemKonwoj.setMnemonic('K');

        //Dodaje zakladki do menu Raporty
        //Zakladka analiza sprzedazy
        JMenuItem elemAnaliza = new JMenuItem("Analiza Sprzedaży");
        raportPlik.add(elemAnaliza);
        elemAnaliza.setMnemonic('A');

        //Zakładka przeceny
        JMenuItem elemPrzecena = new JMenuItem("Przeczeny");
        raportPlik.add(elemPrzecena);
        elemPrzecena.setMnemonic('N');

        //Zakładka efektywnosc sprzedazy
        JMenuItem elemOtworzES = new JMenuItem("Efektywność Sprzedaży");
        raportPlik.add(elemOtworzES);
        elemOtworzES.setMnemonic('F');

        //Zakładka zamknięcia programu
        JMenuItem zamknijProg = new JMenuItem("Zamknij");
        zamknijProg.addActionListener(new ActionListener()

        {
            @Override
            public void actionPerformed(ActionEvent zdarzenie)
            {
                System.exit(0);
            }

        });
        zamknijPlik.add(zamknijProg);
        zamknijProg.setMnemonic('Z');

       

        // umiesc ramke na srodku ekranu
        setSize(szerEkranu / 2, wysEkranu / 2);
        setLocation(szerEkranu / 4, wysEkranu / 4);


        //okresl ikone i tytul ramki

        Image rys = zestaw.getImage("ikona.gif");
        setIconImage(rys);
        setTitle("InterSalon");


        // Dołączam Panel do ramki

        Hpanel panel = new Hpanel();
        Container powZawartosci = getContentPane();
        powZawartosci.add(panel);
    }

    // Pobieram rozdzielczosc ekranu

        Toolkit zestaw = Toolkit.getDefaultToolkit();
        Dimension rozmiarEkranu = zestaw.getScreenSize();
        int wysEkranu = rozmiarEkranu.height;
        int szerEkranu = rozmiarEkranu.width;

        // Tworzę panel na, którym będą znajdować się przyciski
        //obsługujące program
        // Hpanel - panel głowny
    class Hpanel extends JPanel
    {
        @Override
        public void paintComponent(Graphics g)
        {
            super.paintComponent(g);
            Graphics2D g2 = (Graphics2D)g;

            String message = "Salon sprzedaży, Białystok BA1";
            Font cz = new Font("Serif", Font.BOLD, 22);
            g2.setFont(cz);
            FontRenderContext kontekst = g2.getFontRenderContext();
            Rectangle2D granice = cz.getStringBounds(message, kontekst);

            double x = (getWidth() - granice.getWidth()) / 2;
            double y = (getHeight() - granice.getHeight()) / 1;

            double wzniesienie = - granice.getY();
            double bazowyY = y + wzniesienie;

            g2.drawString(message, (int)x, (int)(bazowyY));
            g2.setPaint(Color.black);



        }
            public static final int x = 600;
            public static final int y = 700;
    }
    private OknoSprzd okno;
}

A to druga część kodu. Czyli okno dialogowe(modalne)"Sprzedaż":

package OknoDial;



import javax.swing.*;
import java.awt.Event.*;
import java.awt.*;

class OknoSprzd extends JDialog
{
    public OknoSprzd(JFrame wlasciciel)
    {
            super(wlasciciel, "Sprzedaż", true);
            final JDialog SellPanel = new JDialog();
            Container powZawartosci = SellPanel.getContentPane();
            SellPanel.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
            SellPanel.setResizable(false);
            SellPanel.setModal(true);
    }
}

I kurcze niby według NetBeans'a nie ma błędu a jednak nie działa tak jak należy. Co jest nie tak?</asm>