import javax.swing.JPanel; import javax.swing.JFrame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; import javax.swing.JButton; public class FirstGUI extends JPanel implements ActionListener, WindowListener { JFrame frame; JButton button1, button2; public static void main(String[] args) { new FirstGUI(); } public FirstGUI(){ frame = new JFrame("FirstGUI"); frame.setSize(300,200); frame.getContentPane().add(this); this.add(button1 = new JButton("Button")); this.add(button2 = new JButton("Button2")); button1.addActionListener(this); button2.addActionListener(this); frame.addWindowListener(this); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } @Override public void actionPerformed(ActionEvent e) { System.out.println(e.getActionCommand()); } @Override public void windowOpened(WindowEvent e) { } @Override public void windowClosing(WindowEvent e) { java.awt.Toolkit.getDefaultToolkit().beep(); } @Override public void windowClosed(WindowEvent e) { } @Override public void windowIconified(WindowEvent e) { } @Override public void windowDeiconified(WindowEvent e) { } @Override public void windowActivated(WindowEvent e) { } @Override public void windowDeactivated(WindowEvent e) { } }