Frame два окна - Java

Узнай цену своей работы

Формулировка задачи:

Всем привет! Вопрос по поводу создания не одного окна при помощи Jframe. это программа создаёт окно с кнопкой , при нажатии создаёт ещё одно идентичное окно, а при закрытии окно закрываются все. Как сделать чтобы закрывался только конкретное окно, а другие нет. вот код:
import javax.swing.*;
import java.util.*;
import java.awt.event.*;
 
 class MyFrame extends JFrame{
    
    public MyFrame(int a, int b)
    {
        setTitle("окно");                   // название созданного окна
        
        setBounds(a,b,a,b);                          // положение и размер окна
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  // обработка события закрытия окна 
        setResizable(false);                             // запрет изменений размеров окна  
        MyPanel pan = new MyPanel();
        add(pan);
        setVisible(true);                                // отобрадение окна
    }   
}
 
 class MyPanel extends JPanel
   {
    public MyPanel()
     {
       JButton  button = new JButton("Создать новое окно");
       add(button);
       button.addActionListener(listener);
     }
       ActionListener listener= new ActionListener()
               {
                   public void actionPerformed(ActionEvent event)
                   {
                       Random rnd = new Random();
                       MyFrame frame = new MyFrame(rnd.nextInt(800), rnd.nextInt(500));
                       
                   }
               };
   }
 
 public class main
{
   public static void main(String[] args)
   {
       MyFrame frame = new MyFrame(100,100);
   }
}
А может с Jframe такое не проделаешь и лучше использовать диалог???

Решение задачи: «Frame два окна»

textual
Листинг программы
if(freeOnClose)
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  // обработка события закрытия окна 
        else    setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.214 из 5