ERLEDIGT
NEIN
NEIN
ANTWORTEN
0
0
ZUGRIFFE
296
296
EMPFEHLEN
-
Hallo,
ich bin gerade etwas verwirrt und finde die Lösung für mein Problem nicht (obwohl soetwas häufiger vorzukommen scheint).
Ich habe mir eine ganz einfache GUI mit zwei Buttons und einem Label gebastelt. Der eine Button soll einen Countup starten der andere ihn pausieren.
Im Konstruktor der GUI wird hierfür eine Klasse "counter" gestartet, die Thread erweitert. Die GUI wird dieser Klasse mit übergeben und counter setzt dann über eine Methode changeText den Text des Labels in der GUI.
Ich hänge nun mal den Code an, da dieser glaube ich alles erklärt.
Steht gui.repaint() direkt in der while(true) Schleife funktioniert übrigens alles wie es soll. Das kommt mir allerdings falsch vor es jedes mal aufzurufen.Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
public class counter extends Thread { private testGUI gui; private int count; private boolean doit; counter(testGUI gui) { this.gui = gui; count = 0; doit = false; } public void run() { while(true) { if(doit) { count++; gui.changeText(Integer.toString(count)); //gui.repaint(); BEWIRKT NICHTS try { sleep(1000); } catch(Exception e) { System.out.println(e); } } } } public void doCount(boolean b) { this.doit = b; } }
Gibt es vielleicht auch eine elegantere Lösung dafür den Text in einem Label hochzählen zu lassen?
Danke!
Ähnliche Themen
-
JPanel: String wird nicht gezeichnet
Von PapaNoah im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 3Letzter Beitrag: 03.02.10, 08:17 -
Diagramm aus XML Datei wird nicht gezeichnet
Von filigrani im Forum Adobe Flex & AIRAntworten: 0Letzter Beitrag: 28.01.09, 12:06 -
JFrame wird nicht vollständig gezeichnet
Von karl_soost im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 1Letzter Beitrag: 04.03.08, 20:25 -
JScrollPane wird nicht neu gezeichnet
Von donstefano im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 3Letzter Beitrag: 21.07.06, 10:39 -
Wieso wird nicht alles gezeichnet
Von MrDude im Forum JavaAntworten: 1Letzter Beitrag: 16.07.06, 01:03





Zitieren
Login




