Java JTabbedPane组件占据整个窗口

Java JTabbedPane组件占据整个窗口,java,swing,jtabbedpane,Java,Swing,Jtabbedpane,我不熟悉Java和整个swing开发。我正在处理一个有三个选项卡的窗口,并将每个组件添加到这些选项卡中。我首先在第三个选项卡中添加了一个文本字段,但它占用了整个选项卡。我敢肯定,如果我添加其他组件,它将腾出空间,但是否有一种方法可以使它最初不占用整个选项卡式窗格 package literature.windows; import java.awt.*; import javax.swing.*; public class MainWindow extends JFrame { JPanel

我不熟悉Java和整个swing开发。我正在处理一个有三个选项卡的窗口,并将每个组件添加到这些选项卡中。我首先在第三个选项卡中添加了一个文本字段,但它占用了整个选项卡。我敢肯定,如果我添加其他组件,它将腾出空间,但是否有一种方法可以使它最初不占用整个选项卡式窗格

package literature.windows;
import java.awt.*;
import javax.swing.*;

public class MainWindow extends JFrame {

JPanel storiesPanel = new JPanel();
JPanel plotPanel = new JPanel();
JPanel charactersPanel = new JPanel();

JTextField addCharacterTextField = new JTextField("Enter Character's Name", 25);

public MainWindow() {

    setSize(800, 600);

    JTabbedPane tabs = new JTabbedPane();
    tabs.addTab("Stories", storiesPanel);
    tabs.addTab("Plot", plotPanel);
    tabs.addTab("Characters", charactersPanel);
    add(tabs);

    tabs.setTabComponentAt(2, addCharacterTextField);

    setVisible(true);
    }
}

您当前正在为该选项卡设置整个选项卡组件。相反,您需要将
JTextField
添加到该选项卡的容器/面板中。替换

tabs.setTabComponentAt(2, addCharacterTextField);


谢谢我不敢相信我看得太多了。
charactersPanel.add(addCharacterTextField);