gui 异常容器

Gui exceptio container

我有这个问题: 线程 "main" java.lang.IllegalArgumentException 中的异常: 将容器的父级添加到自身

这是我的 class :

 package simplechat;
 import javax.swing.*;
 import java.awt.*;
 import java.awt.event.*;


 public class Gui {
    public Gui(){
         JFrame fMain=new JFrame("Chat");
         Container main=new Container();
         main.setLayout(new BorderLayout());
         fMain.setContentPane(main);
         fMain.add(main);
         JPanel utenti=new JPanel();
         JPanel chat=new JPanel();
         utenti.setBackground(Color.red);
         utenti.setSize(150, 500);
         chat.setBackground(Color.green);
         utenti.setSize(350, 500);
         main.add(chat);
         main.add(utenti);
         main.setSize(500,500);
         main.setVisible(true);
 }
}

我还有另一个 class 调用 gui() 方法:

package simplechat;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class SimpleChat extends Frame {


    public static void main(String[] args) {
        new Gui();
    }
}

你能帮帮我吗?

问题很简单: 您将容器设置为框架的内容窗格,然后将容器添加到框架。 JFrame 工作原理的一些基础知识:添加到框架中的所有组件实际上都添加到其内容窗格中。将容器添加到框架时,实际上是将容器添加到框架本身。