Hallo werte Java Freunde ,
ich bin Student und arbeite an einem Java Projekt und habe dabei Probleme mit der GUI. Ich habe eine Klasse Fenster extends JFrame auf deren contentpane liegt eine Box und in der Box sind Label. Diese Label sollen die Position eines Fahrzeugs anzeigen. Dafür habe ich eine Funktion, die für jedes label den text setzt mit label.setText(Integer.toString(x)) bzw. y, z. Dann habe ich eine Klasse Fahrzeug die dieser Funktion ihre x, y, z position übergibt. Das Funktioniert auch soweit. Nun will ich das Fahrzeug aber fahren lassen und dazu soll die Anzeige, wenn das Fahrzeug 50 m fährt nicht von 0 auf 50 gehen, sondern von 0 auf 50 hochzählen. Dafür habe ich in der Klasse Fahrzeug eine while Schleife, die die Position hochzählt und in jedem Schritt die oben genannte Funktion des Fensters mit der Aktualisierung der Label aufruft. Danach rufe ich Thread.sleep(100) auf, damit man das auch sieht. Nun ist es allerdings so, dass, wenn ich das Fahrzeug fahren lasse, erstmal lange nichts passiert und dann steht auf einmal 50 da ohne das hochgezählt wurde. Kann mir das nicht erklären. Habt ihr Ideen woran das liegen könnte? Ich habe das Problem jetzt vereinfacht beschrieben, weil ich nur übers Handy schreibe. Werde mich über jede Antwort freuen.
ich bin Student und arbeite an einem Java Projekt und habe dabei Probleme mit der GUI. Ich habe eine Klasse Fenster extends JFrame auf deren contentpane liegt eine Box und in der Box sind Label. Diese Label sollen die Position eines Fahrzeugs anzeigen. Dafür habe ich eine Funktion, die für jedes label den text setzt mit label.setText(Integer.toString(x)) bzw. y, z. Dann habe ich eine Klasse Fahrzeug die dieser Funktion ihre x, y, z position übergibt. Das Funktioniert auch soweit. Nun will ich das Fahrzeug aber fahren lassen und dazu soll die Anzeige, wenn das Fahrzeug 50 m fährt nicht von 0 auf 50 gehen, sondern von 0 auf 50 hochzählen. Dafür habe ich in der Klasse Fahrzeug eine while Schleife, die die Position hochzählt und in jedem Schritt die oben genannte Funktion des Fensters mit der Aktualisierung der Label aufruft. Danach rufe ich Thread.sleep(100) auf, damit man das auch sieht. Nun ist es allerdings so, dass, wenn ich das Fahrzeug fahren lasse, erstmal lange nichts passiert und dann steht auf einmal 50 da ohne das hochgezählt wurde. Kann mir das nicht erklären. Habt ihr Ideen woran das liegen könnte? Ich habe das Problem jetzt vereinfacht beschrieben, weil ich nur übers Handy schreibe. Werde mich über jede Antwort freuen.