import java.awt.*; import java.awt.event.*; import java.time.LocalTime; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; class GridEksempel { public static void main(String[] args) { JFrame vindu = new JFrame("Grid"); vindu.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel = new JPanel(); vindu.add(panel); lagGridKnaper(panel); vindu.pack(); vindu.setVisible(true); } public static void lagGridKnaper(JPanel panel){ panel.setLayout(new GridLayout(2,3)); int teller = 1; for(int i = 0; i < 2; i++){ for(int j = 0; j < 3; j++){ panel.add(new GridKnapp(""+teller++)); } } } } class GridKnapp extends JButton{ private String tall; public GridKnapp(String tall){ super(tall); this.tall = tall; initGUI(); } class EndreKnappTekst implements ActionListener{ @Override public void actionPerformed(ActionEvent e){ if(getText().equals(tall)){ setText(":)"); }else{ setText(tall); } } } public void initGUI(){ addActionListener(new EndreKnappTekst()); } }