2
我正在使用JavaFX編寫可編輯表格我想驗證輸入(例如,如果驗證失敗,是否已存在相同的值)我想要拒絕新值。換句話說,當用戶在單元格中輸入新值並點擊ENTER時,我會進行驗證,如果失敗,我想查看單元格中的舊值。TableColumn中的onEditCommit中可編輯單元格的驗證
我的代碼看起來非常相似,這個例子 http://java-buddy.blogspot.com/2012/04/javafx-2-editable-tableview.html
我以爲我可以做這樣的事情
colName.setCellFactory(trainerStringCellFactory);
colName.setOnEditCommit(
new EventHandler<TableColumn.CellEditEvent<GymTrainer, String>>() {
public void handle(TableColumn.CellEditEvent<GymTrainer, String> t) {
GymTrainer newTrainer = new GymTrainer(t.getNewValue(), trainer.getSurrname(), trainer.getRateOfPay());
newTrainer.setTrainerId(trainer.getTrainerId());
if (!updateTrainer(newTrainer)) {
// Here I would like to replace value in editable cell
}
}
}
});
有沒有人有一個想法如何做到這一點,或者也許是放錯了地方這樣做?
你有沒有找到永久的解決方案呢? – Jeevanantham