Forum: PC-Programmierung JAVA Systemzeit in GUI


von Markus H. (gammeltante)


Lesenswert?

Grüß euch zusammen,

ich würde gerne auf meiner GUI die aktuelle Systemzeit anzeigen.
Wie mache ich das am einfachsten?
Ich hab ein bissl mit nem jTextField rumprobiert, aber ich habs nicht 
hinbekommen.

von Robert L. (lrlr)


Lesenswert?


von Markus H. (gammeltante)


Lesenswert?

Robert L. schrieb:
> 1. treffer
>
> 
http://www.google.at/search?q=java+systemzeit&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a

Hallo Robert,
danke, das habe ich auch gelesen und so auch hinbekommen.
Problem ist, dass ich den String nicht schön aktualisiert in meine GUI 
reinbekomme. Also wie ich da die Verknüpfung herstellen muss (z.B. von 
einem jTextField oder Label...

Oder habe ich hier was falsch verstanden?

von Hans M. (hansilein)


Lesenswert?

Du brauchst einen thread der deine anzeige refresht und sich dann wieder 
schlafen legt, hier mal ein Beispiel:


public class Animator implements Runnable {

    Thread animator;
    AnimationWidget curHandler;

    public Animator(AnimationWidget animationWidget) {
  super();
  this.curHandler = animationWidget;

    }

    public void init() { }

    public void start() {
  animator = new Thread(this);
  animator.start();
    }

    public void run() {


  while (Thread.currentThread() == animator) {

      curHandler.execute();

      try {
    Thread.sleep(200);
      } catch (InterruptedException e) {
    break;
      }
  }
    }

    public void stop() {
  animator = null;
    }
}

von Andreas B. (andreasb)


Lesenswert?

Vorsicht, Swing ist nicht Threadsave:

http://docs.oracle.com/javase/tutorial/uiswing/concurrency/initial.html

Also alle Änderungen am JLabel oder JTextField, die usprünglich aus dem 
Thread statemmen in ein

SwingUtilities.invokeLater(new Runnable() {
    public void run() {
    }
});

Einpacken.


mfg Andreas

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Ähm.. dafür gibt es, ich weiß völlig unsinnig benannt ;-) eine Klasse 
die nennt sich Timer:
http://docs.oracle.com/javase/7/docs/api/javax/swing/Timer.html
http://docs.oracle.com/javase/tutorial/uiswing/misc/timer.html

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.