title: SetVisible(false) changes the layout of my components within my Panel
body: <p>How do I make the subpanels within my main panel stay where they are when I set one of the subpanels to be invisible?</p>
  
  <p>What I have looks like:</p>
  
  <pre><code>[ (Panel1) (Panel2) (Panel3) (Panel4) ]
  </code></pre>
  
  <p>When I do <code>panel3.setVisible(false)</code> it then looks like:</p>
  
  <pre><code>[      (Panel1) (Panel2) (Panel4)     ]
  </code></pre>
  
  <p>I would like it to look like:</p>
  
  <pre><code>[ (Panel1) (Panel2)          (Panel4) ]
  </code></pre>
  
  <p>I am using the GridBagLayout and my mainPanel declaration looks like:</p>
  
  <pre><code>final JPanel panel = new JPanel(new GridBagLayout());
  GridBagConstraints c = new GridBagConstraints();
  </code></pre>
  
  <p>and I add an new panel like:</p>
  
  <pre><code>final JTextField valueTextField = new JTextField();
  valueTextField.setPreferredSize(new Dimension(80, 25));
  valueTextField.setName("Value");
  c.gridx =0;
  panel.add(valueTextField, c);
  </code></pre>
  
  <p>I'll provide more code if needed and I don't care which layout I use as long as it gets me what I want.</p>