title: Swing label misalign the textfields
body: <p>My swing label is messing up my layout once the text in the label changes, 
  CODE:</p>
  
  <pre><code>/*
   * To change this template, choose Tools | Templates
   * and open the template in the editor.
   */
  package question3_test;
  
  /**
   *
   * @author jackandjill
   */
  public class GUI extends javax.swing.JFrame {
  
      /**
       * Creates new form GUI
       */
      public GUI() {
          initComponents();
      }
  
      /**
       * This method is called from within the constructor to initialize the form.
       * WARNING: Do NOT modify this code. The content of this method is always
       * regenerated by the Form Editor.
       */
      @SuppressWarnings("unchecked")
      // &lt;editor-fold defaultstate="collapsed" desc="Generated Code"&gt;
      private void initComponents() {
  
          jPanel1 = new javax.swing.JPanel();
          title_lbl = new java.awt.Label();
          side1_lbl = new javax.swing.JLabel();
          jLabel2 = new javax.swing.JLabel();
          jLabel3 = new javax.swing.JLabel();
          side1_tf = new javax.swing.JTextField();
          side2_tf = new javax.swing.JTextField();
          side3_tf = new javax.swing.JTextField();
          jButton1 = new javax.swing.JButton();
          result_lbl = new javax.swing.JLabel();
  
          setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
          setMinimumSize(new java.awt.Dimension(200, 100));
  
          jPanel1.setMaximumSize(new java.awt.Dimension(200, 200));
  
          title_lbl.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
          title_lbl.setText("AREA OF TRIANGLE");
  
          side1_lbl.setFont(new java.awt.Font("Tahoma", 1, 11)); // NOI18N
          side1_lbl.setLabelFor(side1_tf);
          side1_lbl.setText("Side 1:");
  
          jLabel2.setFont(new java.awt.Font("Tahoma", 1, 11)); // NOI18N
          jLabel2.setLabelFor(side2_tf);
          jLabel2.setText("Side 2:");
  
          jLabel3.setFont(new java.awt.Font("Tahoma", 1, 11)); // NOI18N
          jLabel3.setLabelFor(side3_tf);
          jLabel3.setText("Side 3:");
  
          side1_tf.setColumns(6);
          side1_tf.setMinimumSize(new java.awt.Dimension(60, 20));
  
          side2_tf.setColumns(6);
          side2_tf.setMinimumSize(new java.awt.Dimension(60, 20));
  
          side3_tf.setColumns(6);
          side3_tf.setMinimumSize(new java.awt.Dimension(60, 20));
  
          jButton1.setFont(new java.awt.Font("Tahoma", 1, 11)); // NOI18N
          jButton1.setText("Calculate Area");
          jButton1.setBorder(null);
          jButton1.addActionListener(new java.awt.event.ActionListener() {
              public void actionPerformed(java.awt.event.ActionEvent evt) {
                  jButton1ActionPerformed(evt);
              }
          });
  
          result_lbl.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
          result_lbl.setText("jLabel4");
  
          javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
          jPanel1.setLayout(jPanel1Layout);
          jPanel1Layout.setHorizontalGroup(
              jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
              .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                  .addContainerGap(25, Short.MAX_VALUE)
                  .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                      .addGroup(jPanel1Layout.createSequentialGroup()
                          .addGap(33, 33, 33)
                          .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                              .addGroup(jPanel1Layout.createSequentialGroup()
                                  .addComponent(side1_lbl)
                                  .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                  .addComponent(side1_tf, javax.swing.GroupLayout.DEFAULT_SIZE, 60, Short.MAX_VALUE))
                              .addGroup(jPanel1Layout.createSequentialGroup()
                                  .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                      .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                                          .addComponent(jLabel2)
                                          .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED))
                                      .addGroup(jPanel1Layout.createSequentialGroup()
                                          .addComponent(jLabel3)
                                          .addGap(10, 10, 10)))
                                  .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                      .addComponent(side3_tf, javax.swing.GroupLayout.DEFAULT_SIZE, 60, Short.MAX_VALUE)
                                      .addComponent(side2_tf, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))))
                      .addComponent(title_lbl, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                      .addGroup(jPanel1Layout.createSequentialGroup()
                          .addGap(17, 17, 17)
                          .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 132, javax.swing.GroupLayout.PREFERRED_SIZE)))
                  .addGap(30, 30, 30))
              .addComponent(result_lbl, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
          );
          jPanel1Layout.setVerticalGroup(
              jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
              .addGroup(jPanel1Layout.createSequentialGroup()
                  .addComponent(title_lbl, javax.swing.GroupLayout.PREFERRED_SIZE, 44, javax.swing.GroupLayout.PREFERRED_SIZE)
                  .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                  .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                      .addComponent(side1_lbl)
                      .addComponent(side1_tf, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                  .addGap(18, 18, 18)
                  .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                      .addComponent(jLabel2)
                      .addComponent(side2_tf, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                  .addGap(18, 18, 18)
                  .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                      .addComponent(jLabel3)
                      .addComponent(side3_tf, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                  .addGap(18, 18, 18)
                  .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 31, javax.swing.GroupLayout.PREFERRED_SIZE)
                  .addGap(18, 18, 18)
                  .addComponent(result_lbl)
                  .addGap(0, 21, Short.MAX_VALUE))
          );
  
          title_lbl.getAccessibleContext().setAccessibleName("Area of Triangle");
  
          javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
          getContentPane().setLayout(layout);
          layout.setHorizontalGroup(
              layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
              .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                  .addContainerGap(37, Short.MAX_VALUE)
                  .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                  .addGap(18, 18, 18))
          );
          layout.setVerticalGroup(
              layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
              .addGroup(layout.createSequentialGroup()
                  .addContainerGap()
                  .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                  .addContainerGap(25, Short.MAX_VALUE))
          );
  
          pack();
      }// &lt;/editor-fold&gt;
  
      private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
          // TODO add your handling code here:
          result_lbl.setText("This is getting longer,This is getting longer,This is getting longer");
      }
  
      /**
       * @param args the command line arguments
       */
      public static void main(String args[]) {
          /*
           * Set the Nimbus look and feel
           */
          //&lt;editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "&gt;
          /*
           * If Nimbus (introduced in Java SE 6) is not available, stay with the
           * default look and feel. For details see
           * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
           */
          try {
              for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                  if ("Nimbus".equals(info.getName())) {
                      javax.swing.UIManager.setLookAndFeel(info.getClassName());
                      break;
                  }
              }
          } catch (ClassNotFoundException ex) {
              java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
          } catch (InstantiationException ex) {
              java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
          } catch (IllegalAccessException ex) {
              java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
          } catch (javax.swing.UnsupportedLookAndFeelException ex) {
              java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
          }
          //&lt;/editor-fold&gt;
  
          /*
           * Create and display the form
           */
          java.awt.EventQueue.invokeLater(new Runnable() {
  
              public void run() {
                  new GUI().setVisible(true);
              }
          });
      }
      // Variables declaration - do not modify
      private javax.swing.JButton jButton1;
      private javax.swing.JLabel jLabel2;
      private javax.swing.JLabel jLabel3;
      private javax.swing.JPanel jPanel1;
      private javax.swing.JLabel result_lbl;
      private javax.swing.JLabel side1_lbl;
      private javax.swing.JTextField side1_tf;
      private javax.swing.JTextField side2_tf;
      private javax.swing.JTextField side3_tf;
      private java.awt.Label title_lbl;
      // End of variables declaration
  }
  </code></pre>
  
  <p>So when I run this I get this</p>
  
  <p><img src="https://i.stack.imgur.com/C50bn.png" alt="enter image description here"></p>
  
  <p>Then after I press the Calculate Area button I get this </p>
  
  <p><img src="https://i.stack.imgur.com/sk79J.png" alt="enter image description here"></p>
  
  <p>Had a similar problem with another application, asked a question <a href="https://stackoverflow.com/questions/12803906/cant-find-why-the-layout-is-getting-smaller">here</a>
  And I was told to set a fixed column size did that, here as well but still the same effect.</p>