Mega Code Archive

 
Categories / Java by API / Java Awt
 

New SpringLayout()

import java.awt.Container; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.Spring; import javax.swing.SpringLayout; public class MainClass {   public static void main(String[] args) {     JFrame aWindow = new JFrame();     aWindow.setBounds(200, 200, 200, 200);     aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);     Container content = aWindow.getContentPane();     content.add(new SpringLayoutPanel());     aWindow.setVisible(true);   } } class SpringLayoutPanel extends JPanel {   public SpringLayoutPanel() {     SpringLayout layout = new SpringLayout();     setLayout(layout);     JButton[] buttons = new JButton[6];     for (int i = 0; i < buttons.length; i++) {       buttons[i] = new JButton("Press " + (i + 1));       add(buttons[i]);     }     Spring xSpring = Spring.constant(5, 15, 25);     Spring ySpring = Spring.constant(10, 30, 50);     Spring wSpring = Spring.constant(30, 80, 130);     SpringLayout.Constraints buttonConstr = layout.getConstraints(buttons[0]);     buttonConstr.setX(xSpring);     buttonConstr.setY(ySpring);     for (int i = 0; i < buttons.length; i++) {       buttonConstr = layout.getConstraints(buttons[i]);       buttonConstr.setHeight(ySpring);       buttonConstr.setWidth(wSpring);       if (i > 0) {         layout.putConstraint(SpringLayout.WEST, buttons[i], xSpring,             SpringLayout.EAST, buttons[i - 1]);         layout.putConstraint(SpringLayout.NORTH, buttons[i], ySpring,             SpringLayout.SOUTH, buttons[i - 1]);       }     }     SpringLayout.Constraints constr = layout.getConstraints(this);     constr.setConstraint(SpringLayout.EAST, Spring.sum(buttonConstr         .getConstraint(SpringLayout.EAST), Spring.constant(15)));     constr.setConstraint(SpringLayout.SOUTH, Spring.sum(buttonConstr         .getConstraint(SpringLayout.SOUTH), Spring.constant(10)));   } }