I am having issue where my JPanel is not setting up the size. I am not sure if is something to do with my JTab or JFrame. I am using GridBagLayout layout management. And for some reason are not able to set the size.
Here is a dummy code, following the same logic to my original source code:
FirstPanel.java
import javax.swing.*;
import java.awt.*;
public class FirstPanel extends JPanel {
    private JLabel label1 = new JLabel("Label 1");
    private JTextField textField1 = new JTextField();
    private GridBagConstraints c = new GridBagConstraints();
    public FirstPanel() {
        //Size is not overriding
        Dimension size = getPreferredSize();
        size.width = 100;
        setPreferredSize(size);
        setBorder(BorderFactory.createTitleBorder("Border Title");
        setLayout(new GridBagLayout());
        addComponents();
    }
    private void addComponents() {
        c.gridx = 0;
        c.gridy = 0;
        c.anchor = GridBagConstraints.NORTHWEST;
        c.insets = new Insets(5, 0, 0, 0);
        add(label1, c);
        c.gridx = 1;
        add(textField1, c);
        c.weightx = 1;
        c.weighty = 1;
        add(new JLabel(""), c);
    }
}
MainPanel.java
import javax.swing.*;
import java.awt.*;
public class MainPanel {
    private JFrame frame = new JFrame("App");
    private JPanel panel1 = new JPanel(new GridBagLayout());
    private GridBagConstraints c = new GridBagConstraints();
    private JTabbedPane tabPane = new JTabbedPane();
    public MainPanel() {
        addComponents();
        frame.add(tabPane);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(500, 350);
        frame.setVisible(true);
        frame.setLocationRelativeTo(null);
        frame.setResizable(false);
    }
    private void addComponents() {
        tabPane.addTab("Tab 1", new FirstPanel());
    }
}
Main.java
public class Main {
    public static void main(String[] args) {
        new MainPanel();
    }
}
 
    