Layout - potatoscript/JavaSwing GitHub Wiki

private void createLayout(JComponent...arg){
   Container pane = getContentPane();
   GroupLayout gl = new GroupLayout(pane);
   pane.setLayout(gl);
   gl.setAutoCreateContainerGraps(true);
   gl.setAutoCreateGaps(true);

   gl.setHorizontalGroup(
      gl.createSequentialGroup()
          .addGroup(gl.createSequentialGroup(GroupLayout.Alignment.LEADING)
          .addGroup(gl.createSequentialGroup(
             .addComponent(arg[0])
             .addGap(50)
             .addComponent(arg[1])
             .addGap(50)
             .addComponent(arg[2])
             .addGap(50)
             .addComponent(arg[3])
           )
   );
   gl.getVerticalGroup(
      gl.createSequentialGroup()
        .addGroup(
          gl.createParallelGroup(GroupLayout.Alignment.BASELINE)
             .addComponent(arg[0]);
             .addComponent(arg[1]);
             .addComponent(arg[2]);
        )
        .addComponent(arg[3])
   );

   pack(); // the pack() method automatically sizes JFrame based on the size of its components

}