zamykanie internalFrame

0

Witam wszystkich mam problem tworzę InternalFrame:

// tworzenie ramki wyboru progu
    public void zachodzenia(Component d, String w)
    {  
      JInternalFrame pytzachodzenia = new JInternalFrame(w,
         false,  
         false,  
         false,  
         false); 

      pytzachodzenia.add(d, BorderLayout.CENTER);

 // dodawanie zawartośći ramki - panel zapytanie
 			panel_zapytanie zapytanie = new panel_zapytanie();
			Container ik=pytzachodzenia.getContentPane();
       		ik.add(zapytanie);
        
 // wizualizacja ramki 
        pytzachodzenia.setVisible(true);
		pytzachodzenia.setFrameIcon(new ImageIcon("ikony\\i.gif"));     
        desktop.add(pytzachodzenia);
		int width = 200; 
      	int height = 200; 
      	pytzachodzenia.reshape(300, 400, width, height);        	
    	//pytzachodzenia.setSize(500, 325);
      	pytzachodzenia.show();	
	    try
        {  
           pytzachodzenia.setSelected(true);
        }
        catch (PropertyVetoException e)
        {}
    }

Natępnie dodaję clasę do internal Frame


class panel_zapytanie extends JPanel
{
    JTextField poleTekstowe1;
    public panel_zapytanie()
    {  
 // załaduj obraz
       ikona_1 = Toolkit.getDefaultToolkit().getImage("ikony\\indeks_1.jpg");
       MediaTracker trop = new MediaTracker(this);
       trop.addImage(ikona_1, 0);
       try { trop.waitForID(0); } 
       catch (InterruptedException exception) {}
    
 	   JLabel etykieta1 = new JLabel("Podaj próg odcieni");
 	   add(etykieta1);
 	   JLabel etykieta2 = new JLabel("szarości zdjęcia (od 0 do 255)");
 	   add(etykieta2);
 	   poleTekstowe1 = new JTextField(12);
 	   poleTekstowe1.reshape(300, 400, 10, 40);
 	   add(poleTekstowe1);    
       JButton przycisk1 = new JButton(" Ok ");   
       add(przycisk1);
       JButton przycisk2 = new JButton("Anuluj");   
       add(przycisk2);   
       ActionListener sl2 = new przycisk1();
       przycisk1.addActionListener(sl2);       
   }

class przycisk1 implements ActionListener {
public void actionPerformed(ActionEvent zdarzenie) 
{
       if (poleTekstowe1.getText().trim().length() > 0)
{
		prog = Integer.parseInt(poleTekstowe1.getText());

		// chodzi o to miejsce w jaki sposób dopisać zamykanie InternalFrame
}

}}

}

W jaki sposób w class przycisk1 implements ActionListener za pomocą przycisku OK.(przycisk1) zamknąć Internal Frame o nazwie pytzachodzenia

0

Klasa przycisk1 musi "znać" okno, które ma zamknąć

ActionListener sl2 = new przycisk1(pytzachodzenia);
.....
class przycisk1 implements ActionListener 
{
    JInternalFrame if;
    public przycisk1(JInternalFrame if)
    {
        this.if=if;
    }
    public void actionPerformed(ActionEvent zdarzenie)
   {
       if (poleTekstowe1.getText().trim().length() > 0)
       {
                prog = Integer.parseInt(poleTekstowe1.getText());

                // chodzi o to miejsce w jaki sposób dopisać zamykanie InternalFrame
                if.setVisible(false);
       }

}}

}
0

tak nie wiem w jaki sposób w tym miejscu odwołać się do internalFrame

0

Nie działa wysypuje błędy nie rozumiem tego zagadnienia użyłem innej zmiennej niż if i nadal to samo :-(

1 użytkowników online, w tym zalogowanych: 0, gości: 1