Ich schreibe eine App, die die Zeit für Aufgaben misst. Ich habe TableTreeView, das Details des Projekts und seiner Aufgaben enthält.Wie aktualisiert man TreeTableView Daten?
Dies ist, wie es aussieht: TableTreeViewImage
Was ich will, ist duration`s Spalte zu aktualisieren ihre Werte zu machen, wenn Aufgabe ausgeführt wird. Auch die Projektdauer sollte aktualisiert werden.
Das ist mein Modell:
public abstract class SimpleTask{
abstract Duration getDuration();
}
public class Task extends SimpleTask{
Duration duration;
@Override
public Duration getDuration(){
return duration;
}
public start(){
//update duration value every second;
}
}
public class Project extends SimpleTask{
List<Task> tasks;
@Override
public Duration getDuration(){
return tasks.stream()
.map(Task::getDuration)
.reduce(Duration.ZERO,Duration::plus);
}
ich versucht habe, Dauer Spalte mit Methode getDuration() zu binden, aber dann muss TableTreeView aufgefrischt werden Werte in dieser Spalte aktualisieren.
Wie kann ich die Spalte duration aktualisieren, wenn die Task ausgeführt wird?