Wpis z mikrobloga

#programowanie #java #javafx Czemu tabela nie aktualizuje mi się przy zmianie wartości jakiegoś obiektu z tej tabeli? Używam SimpleStringProperty i powinno zaktualizować tabele a nie aktualizuje tylko muszę odświeżać całą tabelę

Deklaracja tabeli i wypełnienie danymi
@FXML
private TableView userTable;
@FXML
private TableColumn emailColumn;
private ObservableList observableUserTable;

userDAO = new UserDAOImpl();
observableUserTable = FXCollections.observableArrayList(userDAO.findAll());
userTable.setItems(observableUserTable);
emailColumn.setCellValueFactory(
new PropertyValueFactory<>("email"));

metoda wykonywana po kliknięciu przycisku
@FXML
void newUser(ActionEvent event) {
User user = (User) userTable.getSelectionModel().getSelectedItem();
user.setEmail(user.getEmail() + "1");
UserDAO udao = new UserDAOImpl();
udao.updateUser(user);
}

część klasy User
private SimpleStringProperty email;
@Column(name = "EMAIL", unique = true, nullable = false)
public String getEmail() {
return email.get();
}
public void setEmail(String email) {
// this.email = email;
if (this.email == null) {
this.email = new SimpleStringProperty();
}
this.email.set(email);
}
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach