BenjieAul Geschrieben 8. Dezember 2004 Geschrieben 8. Dezember 2004 Hi, Weiß irgendjemand von euch, wie man etwas automatisch aktualisiert? Also so eine Uhrsynchronisation? Habe ganz toll geschrieben, was der machen soll, aber weiß net, wie ich dem Copiler beibringe, dass er die Uhr alle 1 Seknude aktualisiert Im Klartext Ich will das eine bestimmte Aktion alle 1 Sekunde wiederholt wird. Hatte es mit sleep versucht aber das wollte irgendwie net =( Außerdem macht der ja dann das auch net, was danach kommt, oder? while(true) { // An die Funktion zeitHolen wird die Variable Ausgeben übergeben und diese Informationen werden in der VAriable Uhrzeitanzeigend gespeichert Uhrzeitanzeigend = zeitHolen(Ausgeben); // Das Uhrzeit Label bekommt die Informationen der Variable Uhrzeitanzeigend label5 = new JLabel(Uhrzeitanzeigend); sleep(2000); } Zitieren
Krain Geschrieben 8. Dezember 2004 Geschrieben 8. Dezember 2004 Probiers mal so: new Runnable() { public void run() { while(true) { // Uhrzeit berechnen ... label5.setText(uhrzeit); try { sleep(50); } catch(InterruptedException e) { } } } }.start(); ungetestet... Zitieren
kingofbrain Geschrieben 8. Dezember 2004 Geschrieben 8. Dezember 2004 Geht auch innerhalb einer Schleife mit Thread.sleep(500); Ohne einen eigenen Thread. Und wieder mein Hinweis auf http://www.javabuch.de Peter Zitieren
BenjieAul Geschrieben 8. Dezember 2004 Autor Geschrieben 8. Dezember 2004 @ king of brain Danke, aber irgendwie ist die javabuch.de Seite bei uns gespeert =( und das mit nur sleep(2000) funktioniert nicht! Muss ich noch eine weiter Klasse einbinden? Verwende zur Zeit folgende Klassen: import java.lang.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.util.*; import java.io.*; import java.sql.*; import java.lang.NumberFormatException; Zitieren
Krain Geschrieben 8. Dezember 2004 Geschrieben 8. Dezember 2004 Zunächst mal: java.lang.*; wird nicht in die import-Anweisungen aufgenommen. Warum funktioniert es nicht? Hast du einen Compilerfehler oder zeigt er zur Laufzeit nur nichts an? Hast du die InterruptedException bei der Anweisung Thread.sleep(2000) abgefangen? Du musst schon etwas Informationen geben. Zitieren
BenjieAul Geschrieben 8. Dezember 2004 Autor Geschrieben 8. Dezember 2004 das java.lang habe ich auch nur für mich drinnen stehen, braucht keiner zu beachten. ISt für mich ne Hilfe. Also Thread.sleep funktioniert. Aber nur alleine sleep(2000) funktioniert nicht (so hattest du es aber gesagt) Zitieren
Krain Geschrieben 8. Dezember 2004 Geschrieben 8. Dezember 2004 Hast du nun meine Methode angewendet, oder die von kingofbrain? Ich sehe gerade, dass ich einen Fehler drin habe! Du hast Recht? Ich sagte aber,dass es ungetestet ist! new Thread(new Runnable() { public void run() { while(true) { // Uhrzeit berechnen ... label5.setText(uhrzeit); try { sleep(50); } catch(InterruptedException e) { } } } }).start(); so müsste es richtig sein. Oder einfach statt new Thread(...) "Thread.sleep()" in der run() schreiben. Zitieren
BenjieAul Geschrieben 8. Dezember 2004 Autor Geschrieben 8. Dezember 2004 HAbe mal eine Frage, macht der das dann so neben bei? Also tut er den Code den er danach bekommt trotzdem weiter ausführen, doer bleibt er da stehen? Weil die Uhr ist vll. gerade mal 1/100 von dem Programm Zitieren
Krain Geschrieben 8. Dezember 2004 Geschrieben 8. Dezember 2004 Mit dem Code, den ich dir gegeben habe wird der restliche Code auch ausgeführt. Der Sinn eines Threads ist nunmal die Nebenläufigkeit. Gehört auch zum Grundwissen über Java - IMHO ist das sogar ein sehr wichtiges Kapitel. Schau dir am besten mal Doku dazu an. Zitieren
BenjieAul Geschrieben 8. Dezember 2004 Autor Geschrieben 8. Dezember 2004 So, hattest es immer noch falsch, aber es funktioniert, wenn du Thread.sleep(50) eingibst. Musst also trotzdem erst Thread.sleep eingeben. Nochmal Danke, jetzt weiß ich endlich wie ich sowas automatisch machen kann =) Zitieren
BenjieAul Geschrieben 8. Dezember 2004 Autor Geschrieben 8. Dezember 2004 Also irgendwie will der das trotzdem nicht machen. Er bleibt bei der Eingabe. Auch wenn ich als Sleep eine 1 eingebe Wenn ich den Thread aufbaue, dann geht irgendwie keine Zeitsync mehr. Hatte vorher einen Button, der aktualisiert hat, aber der hat daraufhin auch nicht mehr funktioniert Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.