Interpreter-Fehler Im for loop funkzioniert repaint nicht :(

PStigerID

Mitglied
Hallo liebes Forum,

Ich habe folgendes Problem: Die Bilder werden im folgendem Beispiel nicht geändert???:L:

Die void r() wird gerufen, wenn ein bestimmter jButton gedrückt werden. Der code compiled ohne Probleme;:)

Java:
 private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) { r(); }
   void r() throws InterruptedException
    {
        for(int i=1; i<10; i++) {
        l (jLabel1, (1 + (int) (Math.random() * 6)));
        l (jLabel2, (1 + (int) (Math.random() * 6)));
        l (jLabel3, (1 + (int) (Math.random() * 6)));
        l (jLabel4, (1 + (int) (Math.random() * 6)));
        l (jLabel5, (1 + (int) (Math.random() * 6)));
        l (jLabel6, (1 + (int) (Math.random() * 6)));
        
        Thread.sleep(300);
        }        
    }
    
   
    public void l(JLabel jl, int b)  {  
     String filename = "D"+b+".png";
     ImageIcon im = new ImageIcon(filename);
     int c = 0;
     do
     { c++;
     } while (c<100000 && im.getImageLoadStatus()!=MediaTracker.COMPLETE);
     jl.setIcon(im); //erfolgloser Versuch
     jl.repaint(1); //erfolgloser Versuch
     jl.invalidate(); //erfolgloser Versuch
     jl.updateUI(); //erfolgloser Versuch
  }

Ich danke für eure Hilfe! :toll:

PStigerID
 
G

Gast2

Gast
Java:
void r()
Java:
void l(JLabel jl, int b)
Gewöhn dir mal sprechende Variablen-/Methodennamen an.

Dein Problem: Die Schleife läuft auf dem EDT, der wird damit blockiert und kann deine Änderungen nicht zeichnen.
Außerdem solltest du nicht jedes mal die bilder neu laden, was ja im schlimmsten fall 360 mal das selbe Bild ist. Lies die vorher in eine Map und verwende dann zum Zeichnen die Bilder aus der Map.
 

PStigerID

Mitglied
Dein Problem: Die Schleife läuft auf dem EDT, der wird damit blockiert und kann deine Änderungen nicht zeichnen.

Guten Abend EikeB,

Danke für die schnelle Antwort. :applaus:Jetzt kenn ich das Problem, weiß aber noch nicht wie ich es lösen kann. Könntest du mir da auch noch bei helfen??

Danke

PStiger

P.S.: Ich werde mir das mit der Map gleich mal angucken. Kennst du dafür ein gutes Tutorial? (Gerne auch auf Englisch...)
 
G

Gast2

Gast
Du musst langwierige Aufgaben (so wie deine for Schleife) in nem separaten Thread ausführen. Bei dir könnte das z.b. so aussehen:
Java:
new Thread(new Runnable() {
  public void run() {
    for (...) {
      l (jLabel1, (1 + (int) (Math.random() * 6)));
      // ....
    }
  }
}).start();

Infos zu den Collections findest du z.b. hier: Trail: Collections (The Java™ Tutorials)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Ranger229 Endless loop in while Schleife Java Basics - Anfänger-Themen 3
P Best Practice While loop schleife Java Basics - Anfänger-Themen 5
I Scanner Loop Java Basics - Anfänger-Themen 1
J Erste Schritte Unendlichen Loop stoppen Java Basics - Anfänger-Themen 2
K loop pausieren für eine bestimmte Anzahl? Java Basics - Anfänger-Themen 1
R While-Loop der die Einträge eines Arrays in umgekehrter Reihenfolge anzeigt Java Basics - Anfänger-Themen 3
L loop für Namen Java Basics - Anfänger-Themen 11
D NullPointerException in foreach loop Java Basics - Anfänger-Themen 1
iman Loop Java Basics - Anfänger-Themen 21
CT9288 Permanent laufender loop mit Eingabefunktion gesucht Java Basics - Anfänger-Themen 1
P for-loop Java Basics - Anfänger-Themen 10
B Verwirrender Game Loop Java Basics - Anfänger-Themen 6
W While-Loop unterbrechen Java Basics - Anfänger-Themen 4
I TextField Array mit for Loop erzeugen Java Basics - Anfänger-Themen 4
D Was ist Loop: ? Java Basics - Anfänger-Themen 13
Zeekay Development Erste Schritte Spitzen via For-Loop Java Basics - Anfänger-Themen 4
E Wenn i (for-Loop) bestimmter Wert, dann neue Zeile eines Buttons Java Basics - Anfänger-Themen 7
K Loop ohne Schleifen Java Basics - Anfänger-Themen 2
M bufferedreader loop stoppen Java Basics - Anfänger-Themen 2
R window-Klasse, main-loop und unausschaltbares anti-aliasing Java Basics - Anfänger-Themen 0
S clip.loop(Clip.LOOP_CONTINUOUSLY); stoppen klappt nicht! Java Basics - Anfänger-Themen 11
S Warum erlaubt ein while-Loop keine Variablen-Declaration wie der for-Loop..? Java Basics - Anfänger-Themen 6
S Printstream für einen Hashmap Loop Java Basics - Anfänger-Themen 1
E Integer oder Strings spiegeln (in while loop) Java Basics - Anfänger-Themen 6
G Game Loop Problem Java Basics - Anfänger-Themen 9
D Loop Funktion für Robot Klasse Java Basics - Anfänger-Themen 5
Devil0s while loop, Button action Java Basics - Anfänger-Themen 8
V Schon wieder ein kleines problem...dieses mal mit do-while loop Java Basics - Anfänger-Themen 9
L Mit ChangeListener JSpinner Loop erstellen Java Basics - Anfänger-Themen 2
N Problem mit Loop Java Basics - Anfänger-Themen 2
A For each loop Java Basics - Anfänger-Themen 3
A Vectors in for-loop Java Basics - Anfänger-Themen 6
S For-Each Loop Java Basics - Anfänger-Themen 16
G Loop blockt alle Events Java Basics - Anfänger-Themen 7
G Loop funktion Java Basics - Anfänger-Themen 6
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
A Methoden repaint() zeichnet JPanel falsch Java Basics - Anfänger-Themen 3
P [JTable] Problem mit repaint() Java Basics - Anfänger-Themen 2
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

Ähnliche Java Themen

Neue Themen


Oben