import javax.swing.*; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.awt.*; public class BorderLayoutPanelDemo extends JFrame { public BorderLayoutPanelDemo () { super(); setSize(400, 150); setTitle("BorderLayout Demo"); setLayout(new BorderLayout()); setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); ButtonListener listener = new ButtonListener(); okCancelPanel(this); JButton centerButton = new JButton("Close Window Button"); centerButton.addActionListener( listener ); add(centerButton, BorderLayout.CENTER); } private void okCancelPanel(Container container) { JPanel southPanel = new JPanel(); southPanel.setLayout(new FlowLayout()); container.add(southPanel, BorderLayout.SOUTH); JButton cancelButton = new JButton("Cancel"); southPanel.add(cancelButton); JButton okButton = new JButton("OK!"); southPanel.add(okButton); } public class ButtonListener implements ActionListener { public void actionPerformed(ActionEvent e) { System.out.println(e); System.exit(1); } } public static void main(String[] args) { BorderLayoutPanelDemo w = new BorderLayoutPanelDemo(); w.setVisible(true); } }