Ho davvero difficoltà a capire come funziona l'oggetto ObservableList
in JavaFX. Voglio monitorare se un oggetto nella lista è stato modificato. Finora, vedo solo che posso controllare se la lista, come entità in sé, è stata modificata ... ma non gli oggetti all'interno della lista:Come monitorare le modifiche sugli oggetti contenuti in una ObservableList JavaFX
private ObservableList<Stuff> myList = FXCollections.<Stuff>observableArrayList();
myList.addListener((ListChangeListener.Change<? extends Stuff> change) -> {
while(change.next()){
if(change.wasUpdated()){
System.out.println("Update detected");
}
else if(change.wasPermutated()){
}
else{
for (Stuff remitem : change.getRemoved()) {
//do things
}
for (Stuff additem : change.getAddedSubList()) {
//do things
}
}
}
});
c'è un modo per fare questo. Sto cercando un flusso di lavoro di eventi come la modifica sui trigger degli oggetti => modifica sui trigger di lista => aggiorna su una vista che ha l'elenco come fonte primaria.
Grazie
possibile duplicato di [Java 8: Elenco osservabile: listener di invalidazione o listener di modifiche viene chiamato in caso di modifica della proprietà] (http://stackoverflow.com/questions/26730034/java-8-observable-list-invalidation-listener -nor-change-listener-is-called-in) –
Vedere anche questo post del blog: [Proprietà Extractor: il modo migliore per ottenere ListView aggiornando istantaneamente i suoi elementi] (http://www.jensd.de/wordpress/?p = 1650) –