import java.awt.*; import java.awt.event.*; import javax.swing.*; // opprette et rutenett med knapper // rutenett 3x5 // knappene skal ?ke en felles teller class Uke15 { static JLabel teller = new JLabel("0"); static int xDimensjon = 200; static int yDimensjon = 100; public static void main(String[] args) { JFrame vindu = new JFrame("Uke 15 GUI-program"); vindu.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel = new JPanel(); vindu.add(panel); int nKnapper = Integer.parseInt(args[0]); int nRader = Integer.parseInt(args[1]); //panel.setLayout(new GridLayout(3, 5)); panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); panel.add(teller); teller.setFont(new Font("times new roman", Font.ITALIC, 40)); for (int i = 0; i < nRader; i++) { JPanel subpanel = new JPanel(); subpanel.setLayout(new GridLayout(1, nKnapper)); for (int j = 0; j < nKnapper; j++) { TellerKnapp knapp = new TellerKnapp("knapp "+ i + " " + j, teller, xDimensjon, yDimensjon); subpanel.add(knapp); } panel.add(subpanel); } vindu.pack(); vindu.setVisible(true); } } class TellerKnapp extends JButton { JLabel teller; int xDimensjon; int yDimensjon; public TellerKnapp(String tekst, JLabel teller, int xDimensjon, int yDimensjon) { super(tekst); this.teller = teller; this.xDimensjon = xDimensjon; this.yDimensjon = yDimensjon; initGUI(); } class OekTeller implements ActionListener { @Override public void actionPerformed(ActionEvent e) { int tellerVerdi = Integer.parseInt(teller.getText()); teller.setText( String.valueOf(tellerVerdi + 1) ); } } public void initGUI() { setBackground(Color.BLACK); setForeground(Color.YELLOW); setPreferredSize(new Dimension(xDimensjon, yDimensjon)); // sett x, sett y setFont(new Font("times new roman", Font.CENTER_BASELINE, 30 )); addActionListener(new OekTeller()); } } //