import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SmileKnapper { private JFrame vindu; private JPanel rutenett; public SmileKnapper() { vindu = new JFrame("Smilende knapper"); rutenett = new JPanel(new GridLayout(2, 3)); } public void init() { try { UIManager.setLookAndFeel( UIManager.getCrossPlatformLookAndFeelClassName() ); } catch (Exception e) { System.exit(1); } vindu.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); vindu.setPreferredSize(new Dimension(500, 300)); for (int i = 1; i <= 6; i++) { rutenett.add(new TallKnapp(i + "")); } vindu.add(rutenett); vindu.pack(); vindu.setLocationRelativeTo(null); vindu.setVisible(true); } private class TallKnapp extends JButton { private String tall; public TallKnapp(String tall) { super(tall); this.tall = tall; addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if (getText().equals(":)")) { setText(tall); } else { setText(":)"); } } }); } } public static void main(String[] args) { SmileKnapper s = new SmileKnapper(); s.init(); } }