title: Java GridBagLayout - How to position my components gap-less and one by one?
body: <p>I'm using GridBagLayout to place my GUI components by the following code, wanting the components lay one by one in a column, without any gaps :</p>
  
  <pre><code>import java.awt.GridBagConstraints;
  import java.awt.GridBagLayout;
  
  import javax.swing.JButton;
  import javax.swing.JFrame;
  import javax.swing.JPanel;
  
  public class TestGUI extends JFrame{
  
      public TestGUI(){
  
          JPanel bigPanel = new JPanel(new GridBagLayout());
          JPanel panel_a = new JPanel();
          JButton btnA = new JButton("button a");
          panel_a.add(btnA);
  
          JPanel panel_b = new JPanel();
          JButton btnB = new JButton("button b");
          panel_b.add(btnB);
  
          GridBagConstraints c = new GridBagConstraints();
          c.gridx = 0;
          c.gridy = 0;
          c.weighty = 1D;
          c.fill = GridBagConstraints.HORIZONTAL;
          c.anchor = GridBagConstraints.NORTH;
          bigPanel.add(panel_a, c);
  
          c.gridx = 0;
          c.gridy = 1;
          c.fill = GridBagConstraints.HORIZONTAL;
          bigPanel.add(panel_b, c);
  
          this.add(bigPanel);
      }
  
      public static void main(String[] args) {
  
          TestGUI gui = new TestGUI();
          gui.setVisible(true);
          gui.pack();
      }
  }
  </code></pre>
  
  <p>I wish the panels will be shown one by one in the column. but now i got this :
  <img src="https://i.stack.imgur.com/qEwp3.png" alt="enter image description here"></p>
  
  <p>As i am going to add some more components in the bigPanel, and required some more customization to the layout, so i need to use GridBagLayout instead of other Layout.</p>