I’ve been looking information about refreshing data into a tableview. I was trying modifying directly the model, but I get a bug. I modify the model, but the table doesn’t refreshed, only when I move a column, the table shows the modified values.
To show you an example (13-6) I take the tutorial:
http://docs.oracle.com/javafx/2/ui_controls/table-view.htm#CJABIEED
And I modify it including a button and in its action:
Button button = new Button("Modify");
button.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent arg0) {
String name = table.getItems().get(0).getFirstName();
name = name + "aaaa";
table.getItems().get(0).setFirstName(name);
}
});
final VBox vbox = new VBox();
vbox.setSpacing(5);
vbox.getChildren().addAll(label, table, button);
vbox.setPadding(new Insets(10, 0, 0, 10));
I guess that it’s a bug in the tableview, but is there any chance to fix this?
Thank you!
to make TableView able to track data changes you need to expose relevant fields as JavaFX properties. Add next methods to
Personclass from tutorial: