import java.awt.Container; import java.util.ArrayList; import java.util.List; import javax.swing.JButton; import javax.swing.JFrame; import org.tobiasbelch.java.javui.layout.AbsoluteConstraint; import org.tobiasbelch.java.javui.layout.Constraint; import org.tobiasbelch.java.javui.layout.PositionLayout; import org.tobiasbelch.java.javui.layout.Property; import org.tobiasbelch.java.javui.layout.RelativeConstraint; public class PLTest { public static void addComponentsToPane(Container pane) { List> constraints = new ArrayList>(); constraints.add(new AbsoluteConstraint (Property.Left, 10)); constraints.add(new RelativeConstraint (Property.Right, 0.50f)); constraints.add(new AbsoluteConstraint (Property.Top, 10)); constraints.add(new AbsoluteConstraint (Property.Bottom, 10)); pane.add(new JButton("Button"), constraints); constraints = new ArrayList>(); constraints.add(new RelativeConstraint (Property.HCenter, .125f)); constraints.add(new AbsoluteConstraint (Property.Top, 10)); constraints.add(new RelativeConstraint (Property.Width, .25f)); constraints.add(new RelativeConstraint (Property.Height, .25f)); pane.add(new JButton("Button"), constraints); } private static void createAndShowGUI() { JFrame frame = new JFrame("Demo"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container c = frame.getContentPane(); c.setLayout(new PositionLayout()); addComponentsToPane(c); frame.pack(); frame.setVisible(true); System.out.println(c); } public static void main(String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { createAndShowGUI(); } }); } }