Uhrzeit aktualisiert sich nicht

Status
Nicht offen für weitere Antworten.

raven

Bekanntes Mitglied
Also ich programmiere gerade eine digitale Uhr. Ich habe auch die Suchfunktion benutzt hat mir aber nicht viel geholfen,

Also mein Problem ich habe zwar die Uhrzeit gespeichert und schon ausgegeben aber sie aktualisiert sich nicht obwohl ich muthythreading drin habe kann mir jemand helfen.

Meine Code:

Code:
import java.applet.*;						// Import befehle
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.util.Date;


public class Datum extends Frame implements Runnable
{
	Thread t;
	boolean bWeiter=true;

	private Image dbImage;
	private Graphics dbGraphics;
	Image img;

	Date Uhrzeit = new Date();
	int Stunden;
	int Minuten;
	int Sekunden;

	Label Lstunden;
	Label Lminuten;
	Label Doppelpunkt;

	public Datum()
	{
		addWindowListener(new WindowAdapter()
		{public void windowClosing (WindowEvent evt) {System.exit(0);}});
		setSize(400,355);
		setBackground(Color.white);
		setTitle("Datum");
		setVisible(true);
		setLayout(null);

		Font f = new Font("TimesRoman",Font.ITALIC,30);

		Lstunden = new Label("");// Label erzeugen
		Lstunden.setFont(f);	//Schriften zuordnen
		Lstunden.setForeground(Color.blue);
		Lstunden.setBounds(5,25,55,50);// Position des Label festlegen
		add(Lstunden); // Label anzeigen

		Doppelpunkt = new Label(":");// Label erzeugen
		Doppelpunkt.setFont(f);	//Schriften zuordnen
		Doppelpunkt.setForeground(Color.black);
		Doppelpunkt.setBounds(60,25,15,50);// Position des Label festlegen
		add(Doppelpunkt);

		Lminuten = new Label("");// Label erzeugen
		Lminuten.setFont(f);	//Schriften zuordnen
		Lminuten.setForeground(Color.blue);
		Lminuten.setBounds(85,25,55,50);// Position des Label festlegen
		add(Lminuten);
	}
	public void start()
	{
		System.out.println("start");
		t = new Thread(this);
		t.start();
	}
	public void stopp()
	{
		System.out.println("stopp");
		bWeiter=false;
	}
	public void run()
	{
		System.out.println("Run");
		while (bWeiter)
		{
			System.out.println("Run Schleife");
			try {t.sleep(1);}
			catch (Exception e) { }
			repaint();
		}
	}
	public void update(Graphics g)
	{
		if (dbImage == null)
		{
			dbImage = createImage(getSize().width,getSize().height);
			dbGraphics = dbImage.getGraphics();
		}
		// hintergrund l?schen
		dbGraphics.setColor(getBackground());
		dbGraphics.fillRect(0,0,getSize().width,getSize().height);
		// Vordergrund zeichnen
		dbGraphics.setColor(getForeground());
		paint(dbGraphics);
		//Offscreen anzeigen
		g.drawImage(dbImage,0,0,this);
	}
	public static void main (String[] args)
	{
		new Datum();
	}
	public void paint (Graphics g)
	{
		Stunden = Uhrzeit.getHours();
		Minuten = Uhrzeit.getMinutes();
		Sekunden = Uhrzeit.getSeconds();

		Lstunden.setText("" + Stunden);
		Lminuten.setText("" + Minuten);
	}
}
 
B

Beni

Gast
Das mag daran liegen, dass (zumindest in diesem Code oben) niemals start() aufgerufen wird :wink:


P.S.
Du benötigst hier gar kein Buffer-Bild:

Code:
class Datum extends Frame implements Runnable
{
   private Thread t;
   private boolean bWeiter=true;

 //  Date Uhrzeit = new Date();
 //  int Stunden;
 //  int Minuten;
 //  int Sekunden;

   private Label Lstunden;
   private Label Lminuten;
   private Label Doppelpunkt;
   private Label labelSekunden;

   public Datum()
   {
      addWindowListener(new WindowAdapter()
      {public void windowClosing (WindowEvent evt) {System.exit(0);}});
      setSize(400,355);
      setBackground(Color.white);
      setTitle("Datum");
      setVisible(true);
      setLayout(null);

      Font f = new Font("TimesRoman",Font.ITALIC,30);

      Lstunden = new Label("");// Label erzeugen
      Lstunden.setFont(f);   //Schriften zuordnen
      Lstunden.setForeground(Color.blue);
      Lstunden.setBounds(5,25,55,50);// Position des Label festlegen
      add(Lstunden); // Label anzeigen

      Doppelpunkt = new Label(":");// Label erzeugen
      Doppelpunkt.setFont(f);   //Schriften zuordnen
      Doppelpunkt.setForeground(Color.black);
      Doppelpunkt.setBounds(60,25,15,50);// Position des Label festlegen
      add(Doppelpunkt);

      Lminuten = new Label("");// Label erzeugen
      Lminuten.setFont(f);   //Schriften zuordnen
      Lminuten.setForeground(Color.blue);
      Lminuten.setBounds(85,25,55,50);// Position des Label festlegen
      add(Lminuten);
      
      Doppelpunkt = new Label(":");// Label erzeugen
      Doppelpunkt.setFont(f);   //Schriften zuordnen
      Doppelpunkt.setForeground(Color.black);
      Doppelpunkt.setBounds(140,25,15,50);// Position des Label festlegen
      add(Doppelpunkt);

      labelSekunden = new Label("");// Label erzeugen
      labelSekunden.setFont(f);   //Schriften zuordnen
      labelSekunden.setForeground(Color.blue);
      labelSekunden.setBounds(165,25,55,50);// Position des Label festlegen
      add(labelSekunden);
      
      start();
   }
   public void start()
   {
      System.out.println("start");
      t = new Thread(this);
      t.start();
   }
   public void stopp()
   {
      System.out.println("stopp");
      bWeiter=false;
   }
   public void run()
   {
      System.out.println("Run");
      while (bWeiter)
      {
      //   System.out.println("Run Schleife");
         try {t.sleep(10);}
         catch (Exception e) { }
         updateTime();
      }
   }
   
   public static void main (String[] args)
   {
      new Datum();
   }
   public void updateTime(){
      Date time = new Date();

      Lstunden.setText( String.valueOf( time.getHours() ) );
      Lminuten.setText( String.valueOf( time.getMinutes() ) );
      labelSekunden.setText( String.valueOf( time.getSeconds() ) );
   }
}

P.P.S. Bitte überschreib nicht die "paint"-Methode, und zeichne darin dann gar nicht. Die paint-Methode hat eine ganz klare Aufgabe: eine Component zu zeichnen, und nix anderes. Es könnte dir sonst passieren, dass ein Progi ein sehr seltsames Verhalten bekommt...
 

raven

Bekanntes Mitglied
na endlich jetzt hab ichs hingekriegt.
was kann ich dagegen tuhn dan die sekunden nicht nur als eine Zahl angezeigt werden wenn sie kleiner als 10 sind. son zb. 09 Sekunden das gleiche bei Minuten und stunden.
 
B

Beni

Gast
Eine Methode schreiben die eine 0 vor den String hängt, wenn er nur ein Zeichen lang ist.

Code:
public void toString( int value ){
  String text = String.valueOf( value );
  if( text.length() == 1 )
    return ...
  else
    return ...
}
 
R

Roar

Gast
Beni hat gesagt.:
Eine Methode schreiben die eine 0 vor den String hängt, wenn er nur ein Zeichen lang ist.

UFF, oder einfach die SImpleDateFormat oder DecimalFormat klassen nutzen ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Build-Zeitpunt (Datum und Uhrzeit) irgendwie während der Laufzeit zugänglich machen..? Allgemeine Java-Themen 4
T Datum OHNE Uhrzeit Zeitzonen-übergreifend Allgemeine Java-Themen 4
L Uhrzeit von 24-Uhr zu 12-Uhr ändern Allgemeine Java-Themen 2
J Uhrzeit umstellen Allgemeine Java-Themen 2
J Uhrzeit Allgemeine Java-Themen 7
J Countdown für Datum und Uhrzeit Allgemeine Java-Themen 4
A Datum und Uhrzeit in andere Zeitzone umrechnen Allgemeine Java-Themen 7
2 If-Abfrage um Uhrzeit einzuordnen Allgemeine Java-Themen 2
R Uhrzeit aus Timestamp Allgemeine Java-Themen 3
Bluedaishi String Array mit Datum und Uhrzeit String sortieren Allgemeine Java-Themen 6
S Uhrzeit Algorithmus sale Allgemeine Java-Themen 11
F Uhrzeit vervollständigen Allgemeine Java-Themen 14
J Autofill Funktion Uhrzeit Allgemeine Java-Themen 19
K Datum+Uhrzeit in Millisekunden (long) umwandeln Allgemeine Java-Themen 7
Z new Date() liefert falsche Uhrzeit Allgemeine Java-Themen 12
Quaxli Uhrzeit von extern Allgemeine Java-Themen 2
F Die aktuelle Uhrzeit zurückgeben lassen Allgemeine Java-Themen 4
DEvent Aktuelle Uhrzeit per Anwendung Allgemeine Java-Themen 4
L Programm um eine bestimmte Uhrzeit ausführen Allgemeine Java-Themen 4
J Funktion zu einer Uhrzeit/datum ausführen Allgemeine Java-Themen 4
M Datum/Uhrzeit in ein Textfeld schreiben Allgemeine Java-Themen 28
D Ereigniss zur bestimmten Uhrzeit Allgemeine Java-Themen 3
B Jfree Chart mit Datum und Uhrzeit Allgemeine Java-Themen 6
N regexp für uhrzeit Allgemeine Java-Themen 4
A Regulärer Ausdruck für die Uhrzeit Allgemeine Java-Themen 3
G Listener auf aktuelles Datum / Uhrzeit Allgemeine Java-Themen 2
I Uhrzeit vergleichen Allgemeine Java-Themen 7
M Uhrzeit im PC stellen Allgemeine Java-Themen 2
G eigene uhrzeit in einer java applikation führen Allgemeine Java-Themen 19
J Uhrzeit vom System auslesen Allgemeine Java-Themen 2
G akuelle Uhrzeit ausgeben? Allgemeine Java-Themen 8
L Variablen Variable nicht aktualisiert Allgemeine Java-Themen 3
A Tablerenderer aktualisiert nicht!! Allgemeine Java-Themen 0
K Threads Thread aktualisiert Progressbar nicht Allgemeine Java-Themen 4
B Text von JLabel wird nicht aktualisiert Allgemeine Java-Themen 5
A mein Frame wird nicht schnell genung aktualisiert Allgemeine Java-Themen 7
N Lwjgl 3d Objekt wird schmaler, wenn es sich dreht Allgemeine Java-Themen 0
S Java Programm lässt sich vom USB-Stick starten, aber nicht von HDD Allgemeine Java-Themen 16
A Eclipse hängt sich auf Allgemeine Java-Themen 7
D Image bewegt sich nicht nach Klicken auf Button Allgemeine Java-Themen 15
Viper13125 Eclipse Hängt sich auf, wenn ich SimpelDateFormat drin lasse Allgemeine Java-Themen 2
L Java überprüfen lassen, ob sich ein gegebener Pfad / das Programm an sich auf einer CD oder Festplatte befindet Allgemeine Java-Themen 14
Tiago1234 Warum hängt sich mein Programm auf? Allgemeine Java-Themen 22
C Parsen einer sich updatenden Html mithilfe von jsoup Allgemeine Java-Themen 4
Kiki01 Häufigster Buchstabe lässt sich nicht ermitteln Allgemeine Java-Themen 30
Tobero Wie berechnet man ob zwei Linien sich schneiden? Allgemeine Java-Themen 2
T Projekt baut nicht mehr/lässt sich nicht mehr ausführen Allgemeine Java-Themen 6
Tobero Wie bekomme ich in welchem Quadrat sich eine Position in einem Grid befindet Allgemeine Java-Themen 11
O Jar lässt sich auf bestimmten Pc nicht starten Allgemeine Java-Themen 18
D Anfänger versucht sich an Xtext Allgemeine Java-Themen 0
F Sich automatisch aufrufende Java-Methoden Allgemeine Java-Themen 2
kodela Inhalt eines Arrays ändert sich mysteriös Allgemeine Java-Themen 2
P JavaFX Anwendung beendet sich selbst nur als Jar Allgemeine Java-Themen 40
Drachenbauer Wie finde ich den Aufrufer zu einer Methode, die sich nicht in meinem Projekt befindet? Allgemeine Java-Themen 2
A 2D-Grafik Einfachster Ansatz, um sich wiederholende Figur in einem 2D-Image zu erkennen Allgemeine Java-Themen 1
M String lässt sich nicht Zusammenfügen Allgemeine Java-Themen 10
I Lohnt sich heutzutage der Aufwand einer Portierung für MacOS Allgemeine Java-Themen 8
G Jar lässt sich mit macOS nicht starten Allgemeine Java-Themen 9
H Erste Schritte Ausführbare Dateien lassen sich nicht starten Allgemeine Java-Themen 5
L Excel Datei löscht sich selbst im Programm - Java Allgemeine Java-Themen 3
K OOP Daten addieren sich bei GUI-Eingabe Allgemeine Java-Themen 10
K ursprüngliche ArrayList ändert sich bei Übergabe in Methode Allgemeine Java-Themen 18
N Quicksort Programm hängt sich auf Allgemeine Java-Themen 6
S Compiler-Fehler Programm verhält sich in Eclipse anders Allgemeine Java-Themen 1
G Beendet sich der Thread selbst?! Allgemeine Java-Themen 3
S Compiler-Fehler IntelliJ Projektdatei lässt sich nicht erstellen. Allgemeine Java-Themen 15
J Bilder lassen sich nicht importieren Allgemeine Java-Themen 3
E GUI.jfm lässt sich nicht mehr öffnen Allgemeine Java-Themen 1
H Kennt sich jemand mit Eclipse und dem Thema Jar-File aus ? Allgemeine Java-Themen 6
S Programm hängt sich manchmal (selten) auf Allgemeine Java-Themen 9
D System.arraycopy verhält sich seltsam Allgemeine Java-Themen 1
C Threads Methode verhält sich merkwürdig Allgemeine Java-Themen 18
D Best Practice Gesamten Bildschirminhalt auslesen und Email schicken sobald kein Pixel sich ändert Allgemeine Java-Themen 11
K jar-Datei lässt sich unter Windows nicht verwenden Allgemeine Java-Themen 3
X Sich wiederholende substrings finden Allgemeine Java-Themen 6
P Input/Output Inputstream verhält sich verschieden Allgemeine Java-Themen 9
T Minimax/Alphabeta Algorithmus hängt sich auf (?) Allgemeine Java-Themen 2
Tausendsassa Threads Einen Thread sich selbst schließen lassen Allgemeine Java-Themen 17
K Java installiert sich nicht ganz Allgemeine Java-Themen 15
E Anwendung verhält sich unter Mac anders als Unter Windows. Allgemeine Java-Themen 4
L Jar lässt sich nicht öffnen Allgemeine Java-Themen 12
T BufferedImage verändert sich beim Einlsesen Allgemeine Java-Themen 1
Z Eclipse hängt sich alle paar Sekunden auf (Keine Rückmeldung). Allgemeine Java-Themen 4
L Liste führt sich nicht weiter Allgemeine Java-Themen 5
C .jar File lässt sich nur über Konsole öffnen Allgemeine Java-Themen 1
F Wert ändert sich nicht Allgemeine Java-Themen 12
T Nach Java Update: Jar Datein öffnen sich nicht mehr mit doppelklick Allgemeine Java-Themen 3
M Programm startet sich selbst neu, alte Logfiles bleiben gesperrt Allgemeine Java-Themen 2
J String Variable verändert sich plötzlich Allgemeine Java-Themen 8
K Java lässt sich nicht Installieren Windows7Ultimate 64Bit Allgemeine Java-Themen 1
F JTable mit Zellen die sich durch andere Eingaben füllen Allgemeine Java-Themen 1
E Liste löscht sich selbstständig Allgemeine Java-Themen 5
I JPanel soll sich dem JFrame anpassen Allgemeine Java-Themen 1
ruutaiokwu datenstruktur welche sich "im kreis" dreht Allgemeine Java-Themen 26
D swingset3.jnlp lässt sich nicht ausführen Allgemeine Java-Themen 2
L Prog läuft in der IDE, hängt sich aber am Mac auf Allgemeine Java-Themen 0
F Spiel lässt sich nicht aus GUI starten Allgemeine Java-Themen 5
B Threads halten sich irgendwie auf... Allgemeine Java-Themen 6
G Services verwenden sich gegenseitig Allgemeine Java-Themen 4
A Auswahl eines JEditorPane das Sich in einem JScrollPanel Befindet Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben