Methoden repaint() zeichnet JPanel falsch

adembey

Neues Mitglied
Hey,
also ich programmiere zur zeit an einem Schiffe versenken Projekt und bin auch schon zum größten Teil fertig. Aber ich hab ein Problem, das ich einfach nicht lösen kann.
Ich habe im JFrame 2 JPanel's, in den JPanels zeichne ich mit paintComponent() ein Spiel Feld. Das Problem ist das in einem der JPanel's das andere JPanel oder auch andere Komponenten des Frames reingezeichnet werden, wenn ich die repaint() Methode(vom JFrame oder auch vom JPanel) aufrufe und sich etwas verändert hat. Diese verschwinden aber auch gleich wenn ich die Fenstergröße ändere oder repaint() aufrufe obwohl sich nichts ändert. Hier mal das wichtigste vom JPanel Code:
Java:
public class Gitter extends javax.swing.JPanel {
    int anzahlLinien = 10;
    int kBreite = 0;
    int kHoehe = 0;
    protected SchiffeFeld sf = new SchiffeFeld();
    Toolkit toolkit = Toolkit.getDefaultToolkit();
    Image wasser = toolkit.createImage(getClass().getResource("wasser.jpg"));
    Image tot = toolkit.createImage(getClass().getResource("Totenkopf.png"));
    Image schiff =  toolkit.createImage(getClass().getResource("icon.png"));


    @Override
    public void paintComponent(Graphics g) {
        

        kBreite = getWidth() / anzahlLinien;
        kHoehe = getHeight() / anzahlLinien;

        g.setColor(Color.black);

        for (int i = 0; i <= anzahlLi; i++) {
            g.drawLine(kBreite * i, 0, kBreite * i, getHeight());
        }
        for (int i = 0; i <= anzahlLi; i++) {
            g.drawLine(0, kHoehe * i, getWidth(), kHoehe * i);
        }

        for (int ii = 0; ii < sf.getGroesseY() - 1; ii++) {
            for (int i = 0; i < sf.getGroesseX() - 1; i++) {
                switch (sf.getElementAnStelle(i + 1, ii + 1)) {
                    case 1:
                        g.setColor(Color.green);
                        //g.fillRoundRect(i * kBreite, ii * kHoehe, kBreite, kHoehe, 35, 35);
                        g.drawImage(schiff, i*kBreite, ii*kHoehe, kBreite, kHoehe, this);
                        break;
                    case 3:
                        g.setColor(Color.blue);
                        //g.fillRoundRect(i * kBreite, ii * kHoehe, kBreite, kHoehe, 35, 35);
                        g.drawImage(wasser, i*kBreite, ii*kHoehe, kBreite, kHoehe, this);
                        break;
                    case 4:
                        g.setColor(Color.red);
                        g.drawImage(tot, i*kBreite, ii*kHoehe, kBreite, kHoehe, this);
                        break;

                }
            }
        }
    }
}
SchiffeFeld ist eine Klasse von mir, die ein 2D Array enthält und ein paar Methoden. Hab auch noch ein Screenshot gemacht.
q5ojg4fy.png

Ich hoffe ihr könnt mir helfen. Danke im vorraus:)
 
Zuletzt bearbeitet:
V

vanny

Gast
Java:
//erste Zeile in der paintComponent:
super.paintComponent(g);
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Wenn ich repaint(); mache, flackert es so stark, das man fast nichts erkennen kann. Java Basics - Anfänger-Themen 11
S Repaint() Java Basics - Anfänger-Themen 1
J Erste Schritte Mit repaint() ist Label nicht sichtbar Java Basics - Anfänger-Themen 15
S Repaint() in der Schleife funktioniert nicht immer Java Basics - Anfänger-Themen 5
H Graphics / repaint Java Basics - Anfänger-Themen 8
D Verhindern das repaint beim vergrößern aufgerufen wird Java Basics - Anfänger-Themen 9
M Liste mit repaint aktualisieren Java Basics - Anfänger-Themen 1
E Probleme mit repaint() Java Basics - Anfänger-Themen 15
K Erkennt repaint nicht Java Basics - Anfänger-Themen 1
S KeyListener/ActionListener/paint()/repaint() Java Basics - Anfänger-Themen 3
1 repaint() Funktion erzeugt Flackern Java Basics - Anfänger-Themen 33
I Anfängerfrage JPanel repaint() Java Basics - Anfänger-Themen 6
A externer repaint Aufruf Java Basics - Anfänger-Themen 9
G Problem mit repaint() Java Basics - Anfänger-Themen 2
J repaint() geht gar nicht; GUI aktualisieren Java Basics - Anfänger-Themen 10
J paint() vs repaint() Java Basics - Anfänger-Themen 3
C repaint wird nicht während Druck auf Maustaste ausgeführt. Java Basics - Anfänger-Themen 4
P [JTable] Problem mit repaint() Java Basics - Anfänger-Themen 2
P Interpreter-Fehler Im for loop funkzioniert repaint nicht :( Java Basics - Anfänger-Themen 4
M repaint() in run-Methode funktioniert nicht Java Basics - Anfänger-Themen 9
O Probleme mit der repaint-Funktion Java Basics - Anfänger-Themen 6
W repaint() ruft paint() nicht auf Java Basics - Anfänger-Themen 9
J repaint() funktioniert nicht wie gewünscht Java Basics - Anfänger-Themen 30
I Hangman CardLayout/repaint? Java Basics - Anfänger-Themen 2
H Variablen Probleme mit repaint() Java Basics - Anfänger-Themen 2
Y im applet malen ohne repaint paint ? Java Basics - Anfänger-Themen 6
J repaint(); launisch ? Java Basics - Anfänger-Themen 3
E Altes Bild bei repaint() löschen? Java Basics - Anfänger-Themen 10
Z Wie repaint() bei Uhr realisieren? Java Basics - Anfänger-Themen 12
N JScrollPane repaint(); geht nicht Java Basics - Anfänger-Themen 4
I repaint bei jpanel Java Basics - Anfänger-Themen 10
T repaint wir nicht mehr geöffnet! Java Basics - Anfänger-Themen 38
T Canvas aktualisierung mit repaint Java Basics - Anfänger-Themen 5
C GUI aktualisieren: repaint, validate, Fenstergröße ändern bringt nichts Java Basics - Anfänger-Themen 13
Antoras Swing repaint und Nullpointer Java Basics - Anfänger-Themen 6
O repaint() wird nicht ausgeführt Java Basics - Anfänger-Themen 3
S problem mit repaint() in Thread Java Basics - Anfänger-Themen 6
Antoras swing und repaint-Ersatz Java Basics - Anfänger-Themen 8
G Automatischer repaint bei Swing so wie bei AWT? Java Basics - Anfänger-Themen 7
M Problem mit repaint Java Basics - Anfänger-Themen 2
R Probleme beim Repaint Java Basics - Anfänger-Themen 3
T repaint einer komponente Java Basics - Anfänger-Themen 2
E repaint() aufrufen Java Basics - Anfänger-Themen 12
F paintComponent mit repaint() aufrufen Java Basics - Anfänger-Themen 27
kulturfenster Probleme mit repaint() Java Basics - Anfänger-Themen 2
S SelectionListener + repaint().Verständnisproblem ;) Java Basics - Anfänger-Themen 7
K Repaint() in Methode Java Basics - Anfänger-Themen 13
G Frage zu repaint() Java Basics - Anfänger-Themen 5
D JPanel repaint() wird nicht gemacht! Java Basics - Anfänger-Themen 7
B Problem mit repaint() Java Basics - Anfänger-Themen 8
V Reihenfolge von Befehlen - hier repaint() zu spät Java Basics - Anfänger-Themen 13
G repaint in paint aufrufen? Java Basics - Anfänger-Themen 9
F repaint() - Methode verzögern lassen? Java Basics - Anfänger-Themen 3
I Erst repaint() dann zeichnen? Java Basics - Anfänger-Themen 6
D von paint() und repaint() im Applet Java Basics - Anfänger-Themen 4
J probleme mit repaint Java Basics - Anfänger-Themen 2
S canvas zeichnet nichts Java Basics - Anfänger-Themen 7
P Threads Im Dialog geöffneter Thread zeichnet nicht Java Basics - Anfänger-Themen 4
N Erste Schritte Applet zeichnet Bild nicht Java Basics - Anfänger-Themen 10
D Funktionsplotter zeichnet nicht Java Basics - Anfänger-Themen 6
L Paint zeichnet nicht gespeicherte Objekte Java Basics - Anfänger-Themen 3
S JPanel zeichnet sich nicht neu Java Basics - Anfänger-Themen 3
M Wieso zeichnet es nicht auf den JPanel Java Basics - Anfänger-Themen 7
G Je nach Lust zeichnet er mal und mal nicht :D Java Basics - Anfänger-Themen 3
K Warum zeichnet er nciht neu? Java Basics - Anfänger-Themen 4
richis-fragen Optisch JPanel BorderLayout vertikaler Rand dicker als horizontaler Rand Java Basics - Anfänger-Themen 4
N Klassen Hintergrundfarbe in JPanel ändert sich nicht Java Basics - Anfänger-Themen 3
J JSON mit einem JPanel Java Basics - Anfänger-Themen 3
J Ein mit UI-Designer erstelltes JPanel einblenden Java Basics - Anfänger-Themen 0
J Eine theoretische Frage zur Praxis - JPanel oder Canvas Java Basics - Anfänger-Themen 5
J Beim Start des Programms zB. eine Linie in JPanel ausgeben Java Basics - Anfänger-Themen 4
C mehrere JPanel in ein JFrame bringen Java Basics - Anfänger-Themen 9
M HILFE JPanel - Graphics Java Basics - Anfänger-Themen 1
B Scrollbares Fenster (JScrollPane) mit JPanel scrollt nicht Java Basics - Anfänger-Themen 3
Zeppi JPanel responsive Grid Java Basics - Anfänger-Themen 0
J JPanel in JScrollPanel Java Basics - Anfänger-Themen 4
Elyt JPanel als HintergrundBild Java Basics - Anfänger-Themen 7
W 2 JPanel in einem JFrame Java Basics - Anfänger-Themen 4
B Wie kann man an ein JPanel eine Scrollbar anheften? Java Basics - Anfänger-Themen 8
O Swing JPanel Java Basics - Anfänger-Themen 4
CptK Klassen JPanel nach Ablauf der Spielzeit neuladen Java Basics - Anfänger-Themen 2
S JPanel wird nicht angezeigt Java Basics - Anfänger-Themen 1
D Animation JPanel Java Basics - Anfänger-Themen 1
M JLabels "verrutschen" beim übergeben von JPanel Java Basics - Anfänger-Themen 2
D Auf angeklicktes JPanel zugreifen Java Basics - Anfänger-Themen 5
D JPanel mehrere Formen zeichnen Java Basics - Anfänger-Themen 5
D JPanel passt die Größe nicht an Java Basics - Anfänger-Themen 22
Y Webinhalt JPanel Java Basics - Anfänger-Themen 6
D Erste Schritte JPanel verschiebt Fenster via setVisible Java Basics - Anfänger-Themen 5
Dechasa Interface JFrame mit mehreren Übereinander liegenden JPanel Java Basics - Anfänger-Themen 5
S JPanel variablenabhängig erstellen Java Basics - Anfänger-Themen 13
J Methoden Dinge auf einem JPanel paltzieren Java Basics - Anfänger-Themen 1
Z JPanel wird zweimal hinterinander gezeichnet.. Wieso? Java Basics - Anfänger-Themen 4
F JFrame resize verschiebt JPanel Java Basics - Anfänger-Themen 3
A altes JPanel entfernen und neues öffnen Java Basics - Anfänger-Themen 5
I A0-Format in jpanel anzeigen Java Basics - Anfänger-Themen 1
R NullPointerException wegen JPanel oder doch nicht ? Java Basics - Anfänger-Themen 7
J Probleme mit eigenem JPanel (IDE Eclipse) Java Basics - Anfänger-Themen 4
S JPanel wird versetzt auf JFrame gelegt Java Basics - Anfänger-Themen 2
V jab ich eclipse verrückt gemacht :D ? array Jpanel, Jlabel Grafik Fehler / Frage Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben