Ich möchte eine Art "zeitlinie" machen. Dh. Die Linie läuft von links nach rechts mit der zeit (zb. 100 px pro Sek.) aber wenn ich das mit dem abziehen mache habe ich ja nicht den genauen Wert jede ms oder nicht?
Du hast nicht jede ms, das stimmt. Aber du willst deine Anzeige nicht 1000 mal pro Sekunde aktualisieren, das ist viel zu häufig und wird vom Menschen nicht flüssiger wahrgenommen als wenn du es nur z.B. alle 50 ms machst.
Den Wert zum jeweiligen Zeitpunkt ist aber schon genau.
Wenn ich ich das mit Start stop mache und die Zeiten voneinander abziehe bewegt sich die Linie erst wenn ich wieder auf stop klicke.
Daher der Timer, damit auch vor dem Stop schon was passiert.
Ich finde das Beispiel nicht so geeignet weil du hier nicht offensichtlich parallele Aktionen hast. Die Zeit läuft von selbst in der Uhr des Rechners und wird da nur immer wieder abgefragt. Start/Stop und die Anzeige zwischendurch können auch gut ohne Thread laufen.
Besser wäre eine wirklich lange andauernde Aktion, die ablaufen soll ohne dass das Hauptprogramm dabei stehen bleibt.
Such doch mal nach "Java thread example", vielleicht ist da was brauchbares zu finden.
Zum Zugriff auf die Anzeige der Zeit vom Thread aus:
Ich weiß nicht wie das in Java genau aussieht, in anderen Sprachen kannst du von einem Thread aus nicht einfach auf die Oberfläche zugreifen und was anzeigen. Falls das in Java auch so ist, handelst du dir damit andere Probleme ein die du für ein Lernprojekt nicht unbedingt auch noch brauchen kannst.