title: GroupLayout: Vertical and Horizontal Groups
body: <p>I'm attempting to create a small Jpanel with a GroupLayout infront of it. Having followed the <a href="http://docs.oracle.com/javase/tutorial/uiswing/layout/group.html" rel="noreferrer">documentation</a> as much as possible as well as looked at a number of StackOverflow questions, I'm still stuck. </p>
  
  <p>The error is as follows:</p>
  
  <blockquote>
    <p>Exception in thread "AWT-EventQueue-0"
    java.lang.IllegalStateException:
    javax.swing.JButton[,0,0,0x0,invalid,alignmentX=0.0,alignmentY=0.5,border=com.apple.laf.AquaButtonBorder$Dynamic@5eef2e7c,flags=288,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=0,left=2,bottom=0,right=2],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=false,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=Invest,defaultCapable=true] is not attached to a vertical group</p>
  </blockquote>
  
  <p>I know that the problem is related to where the buttons are being attached. After all the error says it explicitly. However, I just can't figure out in what manner I'm supposed to attach them. Any ideas?</p>
  
  <pre><code>    JPanel panel = new JPanel();
  
      GroupLayout layout = new GroupLayout(panel);
      panel.setLayout(layout);
  
  
      panel.setMinimumSize(new Dimension(2000,100));      
      panel.setBorder(BorderFactory.createTitledBorder((cdo.getTicker()) + " : (" + cdo.getCurrency() + ")"));
  
  
      layout.setVerticalGroup(
              layout.createSequentialGroup()
              .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
                      .addComponent(new JButton("Invest")))                       
                      .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
                              .addComponent(new JButton("Ignore")))
                              .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
                                      .addComponent(new JButton("Article")))
  
              );
  
  
      layout.setHorizontalGroup(
              layout.createSequentialGroup()
              .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)
                      .addComponent(new JButton("Invest"))
                      .addComponent(new JButton("Ignore"))
                      .addComponent(new JButton("Article"))
                      )
              );
  </code></pre>