dh-Materialien
Java Projekte
// JavaProject ColoredGrid
ColoredGrid.java

// ColoredGrid.java

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.GridLayout;

import javax.swing.*;


class CMenuBar extends JMenuBar implements ActionListener {
    private static final long serialVersionUID = 0L;

    JMenu start;
    JMenuItem start_dye;
    JMenuItem start_clear;
    CFrame cfr;

    public CMenuBar(CFrame cfr) {
        this.cfr = cfr;

        start = new JMenu("Start");
        add(start);

        start_dye = new JMenuItem("Färben");
        start_dye.addActionListener(this);
        start.add(start_dye);

        start_clear = new JMenuItem("Löschen");
        start_clear.addActionListener(this);
        start.add(start_clear);
    }

    public void actionPerformed(ActionEvent object) {
        if (object.getSource() == start_dye) cfr.dyePanels();
        if (object.getSource() == start_clear) cfr.clearPanels();
    }
}


class CFrame extends JFrame {
    private static final long serialVersionUID = 0L;

    Image icon;
    CMenuBar menubar;
    JPanel[] panels; // Arrays
    Color bgcol;

    public CFrame() {
        setTitle("Bunte Kacheln");
        icon = Toolkit.getDefaultToolkit().getImage("dh.png");
        setIconImage(icon);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(349, 301);
        setLocationRelativeTo(null);

        menubar = new CMenuBar(this);
        setJMenuBar(menubar);

        setBackground(Color.WHITE);
        setLayout(new GridLayout(6, 4, 2, 2));

        bgcol = new Color(230, 230, 230);

        panels = new JPanel[24];
        for (int i=0; i<24; i++) { // Schleifen
            panels[i] = new JPanel();
            panels[i].setBackground(bgcol);
            add(panels[i]);
        }

        setVisible(true);
    }

    public void dyePanels() {
        int r, g, b;

        for (int i=0; i<24; i++) {
        r = (int) (255*Math.random()); // Typumwandlungen
        g = (int) (255*Math.random());
        b = (int) (255*Math.random());
        Color newcol = new Color (r, g, b);
        panels[i].setBackground(newcol);
        }
    }

    public void clearPanels() {
        for (int i=0; i<24; i++) {
            panels[i].setBackground(bgcol);
        }
    }
}


public class ColoredGrid {

    public static void main(String[] args) {
        new CFrame();
    }
}

Download ColoredGrid