import java.awt.*; import javax.swing.*; //******************************************************** // LayoutDemo.java Original Authors: Lewis/Loftus // // Demonstrate various layout managers //******************************************************** public class LayoutDemo { public static void main(String[] args) { JFrame frame = new JFrame("Layout Manager Demo"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JTabbedPane tp = new JTabbedPane(); tp.addTab("Intro", new IntroPanel()); tp.addTab("Flow", new FlowPanel()); tp.addTab("Border", new BorderPanel()); tp.addTab("Grid", new GridPanel()); tp.addTab("Box", new BoxPanel()); frame.getContentPane().add(tp); frame.pack(); frame.setVisible(true); } } class IntroPanel extends JPanel { public IntroPanel() { setBackground(Color.green); add(new JLabel("Layout Manager Demonstration")); add(new JLabel("Choose a tab to see an example of a layout manager")); } } class FlowPanel extends JPanel { public FlowPanel() { setLayout(new FlowLayout()); setBackground(Color.green); JButton b1 = new JButton("Button 1"); JButton b2 = new JButton("Button 2"); JButton b3 = new JButton("Button 3"); JButton b4 = new JButton("Button 4"); JButton b5 = new JButton("Button 5"); add(b1); add(b2); add(b3); add(b4); add(b5); } } class BorderPanel extends JPanel { public BorderPanel() { setLayout(new BorderLayout()); setBackground(Color.green); JButton b1 = new JButton("Button 1"); JButton b2 = new JButton("Button 2"); JButton b3 = new JButton("Button 3"); JButton b4 = new JButton("Button 4"); JButton b5 = new JButton("Button 5"); add(b1, BorderLayout.CENTER); add(b2, BorderLayout.NORTH); add(b3, BorderLayout.SOUTH); add(b4, BorderLayout.EAST); add(b5, BorderLayout.WEST); } } class GridPanel extends JPanel { public GridPanel() { setLayout(new GridLayout(2, 3)); setBackground(Color.green); JButton b1 = new JButton("Button 1"); JButton b2 = new JButton("Button 2"); JButton b3 = new JButton("Button 3"); JButton b4 = new JButton("Button 4"); JButton b5 = new JButton("Button 5"); add(b1); add(b2); add(b3); add(b4); add(b5); } } class BoxPanel extends JPanel { public BoxPanel() { setLayout(new BoxLayout(this, BoxLayout.Y_AXIS)); setBackground(Color.green); JButton b1 = new JButton("Button 1"); JButton b2 = new JButton("Button 2"); JButton b3 = new JButton("Button 3"); JButton b4 = new JButton("Button 4"); JButton b5 = new JButton("Button 5"); add(b1); add (Box.createRigidArea(new Dimension(0,10))); add(b2); add (Box.createVerticalGlue()); add(b3); add(b4); add(Box.createVerticalStrut(10)); add(b5); } }