Bestimmte Kreise färben

Pflaumi123

Mitglied
Hallo zusammen,

ich bin gerade dabei ein Spielfeld zu programmieren, indem (wie bei Mensch ärgere dich nicht) bestimmte Felder verschiedene Farben annehmen.
Die Kreise sind als Arrays definiert und nun versuche ich Feld[41] in eine andere Farbe zu geben
Dachte nun das kann man über eine For-Schleife machen, in der man eine Bedingung abfragt, in der Art:
Java:
public void paint(java.awt.Graphics g) {
        super.paint(g);
        for(int i=0; i<kreis.length; i++) {     
            if(kreis[i].FeldArt == 1)
            kreis[i].zeichneN(g);
          
            if(kreis[i].FeldArt == 0)
                kreis[i].zeichneHgr(g);
        }
    }

Hier das Spielfeld:
Java:
package GUI;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JTextField;
import javax.swing.BoxLayout;
import javax.swing.JLabel;
import java.awt.Color;
import javax.swing.border.MatteBorder;

public class SpielfeldKlassisch extends JFrame{

    private JPanel contentPane;
    Feld[] kreis;
    private JPanel panel;
    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    SpielfeldKlassisch frame = new SpielfeldKlassisch();
                    frame.setVisible(true);
                    frame.setSize(1200,850);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }

    /**
     * Create the frame.
     */

    public SpielfeldKlassisch() {
        setBackground(new Color(240, 240, 240));
        getContentPane().setLayout(null);
        getContentPane().add(getPanel());
        int kr = 50;
        kreis = new Feld[kr];
        for(int i=1; i<kr; i++) {
                                                        //Feld 1-40 Normalfelder
            kreis[0] = new Feld(534,76,55,1);
            kreis[40] = new Feld(534,76,55,1);
            kreis[1] = new Feld(534,140,55,1);
            kreis[2] = new Feld(534,204,55,1);
            kreis[3] = new Feld(534,268,55,1);
            kreis[4] = new Feld(534,332,55,1);
            kreis[5] = new Feld(598,332,55,1);
            kreis[6] = new Feld(662,332,55,1);
            kreis[7] = new Feld(726,332,55,1);
            kreis[8] = new Feld(790,332,55,1);
            kreis[9] = new Feld(790,396,55,1);
            kreis[10] = new Feld(790,460,55,1);
            kreis[11] = new Feld(726,460,55,1);
            kreis[12] = new Feld(662,460,55,1);
            kreis[13] = new Feld(598,460,55,1);
            kreis[14] = new Feld(534,460,55,1);
            kreis[15] = new Feld(534,524,55,1);
            kreis[16] = new Feld(534,588,55,1);
            kreis[17] = new Feld(534,652,55,1);
            kreis[18] = new Feld(534,716,55,1);
            kreis[19] = new Feld(470,716,55,1);
            kreis[20] = new Feld(406,716,55,1);
            kreis[21] = new Feld(406,652,55,1);
            kreis[22] = new Feld(406,588,55,1);
            kreis[23] = new Feld(406,524,55,1);
            kreis[24] = new Feld(406,460,55,1);
            kreis[25] = new Feld(342,460,55,1);
            kreis[26] = new Feld(278,460,55,1);
            kreis[27] = new Feld(214,460,55,1);
            kreis[28] = new Feld(150,460,55,1);
            kreis[29] = new Feld(150,396,55,1);
            kreis[30] = new Feld(150,332,55,1);
            kreis[31] = new Feld(214,332,55,1);
            kreis[32] = new Feld(278,332,55,1);
            kreis[33] = new Feld(342,332,55,1);
            kreis[34] = new Feld(406,332,55,1);
            kreis[35] = new Feld(406,268,55,1);
            kreis[36] = new Feld(406,204,55,1);
            kreis[37] = new Feld(406,140,55,1);
            kreis[38] = new Feld(406,76,55,1);
            kreis[39] = new Feld(470,76,55,1);
                                                    //Hausfelder gruen
            kreis[41] = new Feld(150,76,55,0);
      
                }
    }

    public void paint(java.awt.Graphics g) {
        super.paint(g);
        for(int i=0; i<kreis.length; i++) {     
            if(kreis[i].FeldArt == 1)
            kreis[i].zeichneN(g);
          
            if(kreis[i].FeldArt == 0)
                kreis[i].zeichneHgr(g);
        }
    }
  
    private JPanel getPanel() {
        if (panel == null) {
            panel = new JPanel();
            panel.setBackground(Color.LIGHT_GRAY);
            panel.setBounds(984, 0, 300, 961);
            panel.setBorder(new MatteBorder(1, 3, 1, 1, (Color) new Color(0, 0, 0)));
        }
        return panel;
    }
}

Und hier die Klasse Feld:
Java:
package GUI;

import java.awt.Color;
import java.awt.Graphics;

public class Feld extends Object {
    int durchmesser = 8;
    int xPosition, yPosition ;
    int FeldArt;
   
    Feld(int xPosition, int yPosition, int durchmesser, int FeldArt){
        this.xPosition = xPosition;
        this.yPosition = yPosition;
        this.durchmesser = durchmesser;
        this.FeldArt = FeldArt;
    }
  
    public void zeichneN(java.awt.Graphics feld){
        feld.fillOval(xPosition, yPosition, durchmesser, durchmesser);
        feld.drawOval(xPosition, yPosition, durchmesser, durchmesser);
        feld.setColor(Color.WHITE);
    }

    public void zeichneHgr(java.awt.Graphics feldgr){
        feldgr.fillOval(xPosition, yPosition, durchmesser, durchmesser);
        feldgr.drawOval(xPosition, yPosition, durchmesser, durchmesser);
        feldgr.setColor(Color.GREEN);
    }
}

Vielen Dank schon mal :)
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
S JavaFX WebView zeigt bestimmte Websites nicht an AWT, Swing, JavaFX & SWT 2
C Kleineres Bild an bestimmte Koordinaten setzen AWT, Swing, JavaFX & SWT 6
C JList: Bestimmte Objekte ausschließen AWT, Swing, JavaFX & SWT 1
Meeresgott AWT JFileChooser bestimmte Ordner anzeigen AWT, Swing, JavaFX & SWT 16
S Dreiecke in bestimmte Zellen einer JTable AWT, Swing, JavaFX & SWT 9
J JavaFX Bestimmte Zellen im TableView ändern (Farbe und Text) AWT, Swing, JavaFX & SWT 1
T Nur bestimmte Bereiche eines Fotos bearbeiten AWT, Swing, JavaFX & SWT 0
stylegangsta JDialog bestimmte Zeilen kursiv AWT, Swing, JavaFX & SWT 20
F Event Handling JTextArea auf bestimmte Eingabe reagieren (Return-Taste) AWT, Swing, JavaFX & SWT 2
D Swing Bestimmte Berechnung von Spalten durchführen und dann die Zeilen nach bestimmten Kriterien einfärben AWT, Swing, JavaFX & SWT 5
P DefaultStyledDocument eingegebenen String durchsuchen und bestimmte Sachen einfärben AWT, Swing, JavaFX & SWT 1
A Swing Bestimmte Werte anzeigen JSlider() AWT, Swing, JavaFX & SWT 2
L Swing ActionListener zugriff auf bestimmte Elemente AWT, Swing, JavaFX & SWT 3
K LayoutManager Buttons auf bestimmte x und y Koordinaten AWT, Swing, JavaFX & SWT 2
4 AWT bestimmte Objekte zeichnen und löschen AWT, Swing, JavaFX & SWT 8
GianaSisters Swing jTable (bestimmte Zellen umrahmen) AWT, Swing, JavaFX & SWT 8
M [erledigt] Bestimmte Zeile aus JTextArea löschen AWT, Swing, JavaFX & SWT 3
J Swing jSlider nur auf bestimmte werte beschränken AWT, Swing, JavaFX & SWT 15
Z AWT Auf bestimmte Checkbox einer Checkboxgroup zugreifen AWT, Swing, JavaFX & SWT 3
S JTable: Eingabe nur für bestimmte Var.Typen zulassen AWT, Swing, JavaFX & SWT 13
B JTable: Zeilen sortieren, aber bestimmte Zeilen fest lassen AWT, Swing, JavaFX & SWT 9
E Komponenten die wie bestimmte Symbole aussehen AWT, Swing, JavaFX & SWT 6
M Swing JList --> Selektion für bestimmte Indexe verbieten? AWT, Swing, JavaFX & SWT 8
T JComboBox: ActionListener/ItemListener wie nur auf bestimmte Events reagieren? AWT, Swing, JavaFX & SWT 7
borobudur Bestimmte Zone auf einem Bild definieren AWT, Swing, JavaFX & SWT 7
dl85hej bestimmte Zeile anspringen AWT, Swing, JavaFX & SWT 3
R Bestimmte Komponenten vom Neuzeichnen abhalten AWT, Swing, JavaFX & SWT 2
G Bild a auf Bild b, bestimmte Farbe (zb Weiß) durchsichtig AWT, Swing, JavaFX & SWT 7
G Aus Arraylist bestimmte Objekte wiedergegeben bekommen? AWT, Swing, JavaFX & SWT 7
F Wie bestimmte Obj. einer ContentPane abfragen und vergl? AWT, Swing, JavaFX & SWT 11
G Bei JTable eine bestimmte Zelle färben AWT, Swing, JavaFX & SWT 11
R nur bestimmte Daten in JTable anzeigen lassen? AWT, Swing, JavaFX & SWT 3
A Bestimmte Spalten nicht editierbar machen AWT, Swing, JavaFX & SWT 6
C JFormattedTextField - nur bestimmte Zeichen zulassen AWT, Swing, JavaFX & SWT 3
A JTable, bestimmte Zeilen blau hinterlegen AWT, Swing, JavaFX & SWT 3
K Punkte in eine bestimmte Richtung bewegen AWT, Swing, JavaFX & SWT 5
L Again: In JTable bestimmte Zellen färben AWT, Swing, JavaFX & SWT 12
S JCellRenderer läuft nur einmal in bestimmte Bedingung AWT, Swing, JavaFX & SWT 5
B JEditorPane: Höhe für bestimmte Breite bestimmen AWT, Swing, JavaFX & SWT 4
V Bestimmte Spalten im JTable nicht anzeigen AWT, Swing, JavaFX & SWT 2
S Bestimmte Zellenselektion in einer JTable AWT, Swing, JavaFX & SWT 12
C Wie skaliere ich ein Image in eine bestimmte größe? AWT, Swing, JavaFX & SWT 2
M Bestimmte GUI erstellen: Layoutproblem AWT, Swing, JavaFX & SWT 17
K Objekt in eine bestimmte Zelle eines JTables legen AWT, Swing, JavaFX & SWT 3
B ComboBox: nur bestimmte Zeichen zulassen AWT, Swing, JavaFX & SWT 5
B Eingabefelder nur für bestimmte Werte AWT, Swing, JavaFX & SWT 8
W JFileChooser; nur bestimmte Datein AWT, Swing, JavaFX & SWT 5
M Hough-Transformation für Kreise und andere Formen AWT, Swing, JavaFX & SWT 3
G AWT AWT Kreise permanent anzeigen AWT, Swing, JavaFX & SWT 3
C JavaFX mehrere Kreise nach Eingabeprozess ausgeben AWT, Swing, JavaFX & SWT 2
wolfgang63 JavaFX Animation, Kreise im vorgegebem Takt durchs Fenster laufen lassen AWT, Swing, JavaFX & SWT 3
J Swing Bild laden, Kreise drin malen, Schreiben AWT, Swing, JavaFX & SWT 2
M Kreise zeichnen AWT, Swing, JavaFX & SWT 6
U Swing Generierung mehrerer Kreise per MouseListener AWT, Swing, JavaFX & SWT 16
E Swing Rechteck und Kreise verschieben AWT, Swing, JavaFX & SWT 3
M Kreise anklicken (Farbänderung) AWT, Swing, JavaFX & SWT 2
P Kreise Rechtecke AWT, Swing, JavaFX & SWT 5
G Swing Kreise auf JPanel zeichnen AWT, Swing, JavaFX & SWT 11
1 GeneralPath-Kreise werden keine Kreise AWT, Swing, JavaFX & SWT 2
M In einem JLabel Kreise zeichnen AWT, Swing, JavaFX & SWT 4
S Mehrere Tabellen Zellen gleichzeitig färben AWT, Swing, JavaFX & SWT 5
D JavaFX Label lässt sich nicht mehrmals färben AWT, Swing, JavaFX & SWT 7
V JFreechart: In Linechart Linien einzeichnen und Bereiche färben AWT, Swing, JavaFX & SWT 4
M JavaFX TextArea einzelne Buchstaben färben AWT, Swing, JavaFX & SWT 3
T Swing Einzelne Teile eines Textes färben? AWT, Swing, JavaFX & SWT 10
S JavaFX Canvas - nur eine Figur auf der Zeichenfläche färben? AWT, Swing, JavaFX & SWT 1
A JLabel im Listener färben AWT, Swing, JavaFX & SWT 11
KrokoDiehl Swing Buchstaben im Label anders färben AWT, Swing, JavaFX & SWT 4
B jTable ganze Zeile anhand eines Kriterium färben AWT, Swing, JavaFX & SWT 6
S Images färben und transparenz ändern AWT, Swing, JavaFX & SWT 4
O Swing JTable - Zeilen färben (mit Model) AWT, Swing, JavaFX & SWT 13
N Swing Von 2 dimensionalem Array auf JTextfield schließen und färben AWT, Swing, JavaFX & SWT 6
R JTable für Stundenplan färben AWT, Swing, JavaFX & SWT 7
C JTree Einzelne Objekte färben AWT, Swing, JavaFX & SWT 4
chik Button zufällig färben AWT, Swing, JavaFX & SWT 7
M JTable einzelne Zeilen färben AWT, Swing, JavaFX & SWT 2
G JXDatePicker Tage färben AWT, Swing, JavaFX & SWT 2
G Ein Wort in einem String färben in einer Canvas AWT, Swing, JavaFX & SWT 10
S in JTable eine Zeile färben AWT, Swing, JavaFX & SWT 5
J Einzelnes Feld in JTable färben AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben