Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
07.03.2008, 14:16
hutramo



Hallo zusammen,

Ich habe gestern angefangen mich mit Swing zu beschäftigen und habe mich schon durch einige Tutorials durchgearbeitet.
Zu Testzwecken wollte ich mir einen kleinen konsolenbasierten Zähler auf eine hübsche SwingGUI portieren. Das Problem ist nur, dass ich in einer Schleife anscheinend mein "JLabel Anzeige" nicht aktualisieren kann.
Einen einfachen Button, welcher das Label ändert, kann ich jedoch verwenden.
Wie kann ich also realisieren, dass sich meine Anzeige immer aktualisiert?

Hier mal ein Codeschnipsel:
Quellcode:public static void GUIcounter(){
    for(int time = Counter.calcTime(); time >= 0; time--){
        Anzeige.setText(Counter.calculation()); //Passiert nichts, label bleibt gleich
        System.out.println(Counter.calculation()); //funktioniert in der Konsole
        maincounter.secondwait(1000L);  
        Counter.setOverallTime();
    }    
    }
MfG
Hutramo

--

Zufall existiert nicht. Es ist alles Bestimmung !

zum Seitenanfang zum Seitenende Profil || Suche
001
07.03.2008, 15:44
hausi



Was du suchst ist die Methode invalidate().
Edit: Gehört übrigens ins Allg. Coding Forum

--


Dieser Beitrag wurde am 07.03.2008 um 15:49 von hausi bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
002
07.03.2008, 17:28
hutramo



Hallo hausi,

damit ist das ganze aber noch nicht gelöst. Die Lösung des Ganzen war einen neuen Thread zu erstellen, da der Swingthread sonst alles blockiert.
Trotzdem danke für die Hilfe.

--

Zufall existiert nicht. Es ist alles Bestimmung !

zum Seitenanfang zum Seitenende Profil || Suche
003
07.03.2008, 18:57
Kriz



@hausi: Das hat aber nix mit invalidate() zu tun, weil diese Methode eher in den Bereich grafische Ausgabe gehört.

@hutramo: Swing ist leider nicht threadsicher. Aber das hast du ja jetzt selbst erfahren dürfen ;)

--

K:R-I)Z++
"CSS ist cascading style sheets. Und nicht so'n Ranzspiel." - dp
In memory of Voice († 2005/03/30)


Dieser Beitrag wurde am 07.03.2008 um 18:59 von Kriz bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
004
07.03.2008, 19:04
hutramo



@Kriz:
Das mit dem String ist kein Problem, da ich eine toString-Methode geschrieben habe, mit der ich einen String aus verschiedenen Zahlen erstelle. (z.B. eine Uhrzeit 12:45). Sogesehen mache ich genau das, was du vorschlägst.

Durch www.galileocomputing.de/openbook/javainsel6/ schmökere ich mich grade durch. Danke für den Tipp ;)

MfG
hutramo

--

Zufall existiert nicht. Es ist alles Bestimmung !

zum Seitenanfang zum Seitenende Profil || Suche
005
07.03.2008, 22:11
Kriz



Oops, hast du's also doch noch gelesen :)

--

K:R-I)Z++
"CSS ist cascading style sheets. Und nicht so'n Ranzspiel." - dp
In memory of Voice († 2005/03/30)

zum Seitenanfang zum Seitenende Profil || Suche
006
09.03.2008, 00:44
theDon



Nachtraeglich den Diskussionskontext rauseditieren ist natuerlich auch eine ganz grosse Leistung. Anscheinend ist nicht nur Swing nicht threadsafe, sondern Kriz auch nicht.

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche