Layout1.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
import java.util.Random;
/**
Demonstrate the JFrame's default BorderLayout.
*/
class Layout1 extends JFrame
{
public static void main(String argv[])
{
Layout1 f = new Layout1();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.show();
}
public Layout1()
{
Toolkit kit = Toolkit.getDefaultToolkit();
Dimension ss = kit.getScreenSize();
setSize(ss.width/2,ss.height/2);
setLocation(ss.width/4,ss.height/4);
setTitle("CISC370-011 -- BorderLayout demo");
Random rand = new Random();
Container contentPane = getContentPane();
JPanel sp1 = new JPanel();
Border b1 = BorderFactory.createEtchedBorder();
sp1.setBorder(b1);
contentPane.add(sp1,BorderLayout.NORTH);
JPanel sp2 = new JPanel();
Border b2 = BorderFactory.createEtchedBorder();
sp2.setBorder(b2);
contentPane.add(sp2,BorderLayout.CENTER);
JPanel sp3 = new JPanel();
Border b3 = BorderFactory.createEtchedBorder();
sp3.setBorder(b3);
contentPane.add(sp3,BorderLayout.SOUTH);
JPanel sp4 = new JPanel();
Border b4 = BorderFactory.createEtchedBorder();
sp4.setBorder(b4);
contentPane.add(sp4,BorderLayout.WEST);
JPanel sp5 = new JPanel();
Border b5 = BorderFactory.createEtchedBorder();
sp5.setBorder(b5);
contentPane.add(sp5,BorderLayout.EAST);
panelButton("Red",sp1,Color.RED);
panelButton("Green",sp1,Color.GREEN);
panelButton("Blue",sp1,Color.BLUE);
panelButton("Light gray",sp2,Color.LIGHT_GRAY);
panelButton("Gray",sp2,Color.GRAY);
panelButton("Dark gray",sp2,Color.DARK_GRAY);
panelButton("Cyan",sp3,Color.CYAN);
panelButton("Magenta",sp3,Color.MAGENTA);
panelButton("Yellow",sp3,Color.YELLOW);
panelButton("Pink",sp4,Color.PINK);
panelButton("Orange",sp4,Color.ORANGE);
panelButton("White",sp5,Color.WHITE);
panelButton("Black",sp5,Color.BLACK);
}
/**
Add to a panel a button that sets its background color.
*/
void panelButton(String name,final JPanel panel,final Color bg)
{
JButton jb = new JButton(name);
panel.add(jb);
jb.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{ panel.setBackground(bg); }
});
}
}