In our previous post, we discussed the Flow Layout. Another layout manager that commonly used is the Border Layout. The Border Layout in Java places its components in 5 places/directions: North, East, South, West, and Center.

package com.javapointers.javase;
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class BorderLayoutTest {
JButton btnNorth, btnEast, btnWest, btnSouth, btnCenter;
JFrame frame;
public BorderLayoutTest() {
btnNorth = new JButton("North");
btnEast = new JButton("East");
btnWest = new JButton("West");
btnSouth = new JButton("South");
btnCenter = new JButton("Center");
frame = new JFrame();
frame.setSize(500, 400);
frame.setLayout(new BorderLayout());
frame.add(btnNorth, BorderLayout.NORTH);
frame.add(btnEast, BorderLayout.EAST);
frame.add(btnWest, BorderLayout.WEST);
frame.add(btnSouth, BorderLayout.SOUTH);
frame.add(btnCenter, BorderLayout.CENTER);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
public static void main(String args[]) {
BorderLayoutTest test = new BorderLayoutTest();
}
}
Running the program will show you this:

Take note that the default is the component will take the entire space of the cell. For example, if you want our center button to be 100×50 only in size, we can then place first the button in a JPanel and add the panel to the JFrame. Let’s change our example and add these lines:
btnCenter.setPreferredSize(new Dimension(100,50));
JPanel panel = new JPanel();
panel.add(btnCenter);
then change this line:
frame.add(btnCenter, BorderLayout.CENTER);
to:
frame.add(panel, BorderLayout.CENTER);
giving as an output of this:

The next tutorial will be about Grid Layout which is another form of Layout Manager.