import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTextArea; public class BorderExample extends JPanel { private static final int WINDOW_WIDTH = 640; private static final int WINDOW_HEIGHT = 480; public static void main(final String[] args) { JFrame frame = new JFrame("Menu Example"); BorderExample panel = new BorderExample(); frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); frame.setSize(WINDOW_WIDTH, WINDOW_HEIGHT); frame.setLocationRelativeTo(null); frame.setContentPane(panel); panel.initWidgets(); frame.setVisible(true); } public void initWidgets() { BorderLayout layout = new BorderLayout(); setLayout(layout); layout.setVgap(10); JButton north = new JButton("North"); add(north, BorderLayout.NORTH); JButton south = new JButton("South"); add(south, BorderLayout.SOUTH); JButton east = new JButton("East"); east.setPreferredSize(new Dimension(200,200)); add(east, BorderLayout.EAST); JButton west = new JButton("West"); add(west, BorderLayout.WEST); final JTextArea text = new JTextArea(); add(text, BorderLayout.CENTER); north.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { text.append("From the north "); } }); south.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { text.append("From the south "); } }); } }