@Override public TableColumn<SelectionTableRowData, String> getTableColumn() { TableColumn<SelectionTableRowData, String> tableColumn = SelectionTableColumn.super.getTableColumn(); tableColumn.setEditable(true); tableColumn.setOnEditCommit(t -> t.getTableView().getItems().get(t.getTablePosition().getRow()).pace .set(defaultIfBlank(t.getNewValue(), "1"))); return tableColumn; }
@Override public TableColumn<SelectionTableRowData, String> getTableColumn() { TableColumn<SelectionTableRowData, String> tableColumn = SelectionTableColumn.super.getTableColumn(); tableColumn.setEditable(true); tableColumn.setOnEditCommit( t -> t.getTableView().getItems().get(t.getTablePosition().getRow()).pageSelection.set(t.getNewValue())); return tableColumn; }
public static <T> void setupEditableBooleanColumn(TableColumn<T, Boolean> column, final ColumnBooleanAccessor<T> propertyAccessor) { column.getTableView().setEditable(true); column.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<T, Boolean>, ObservableValue<Boolean>>() { @Override public ObservableValue<Boolean> call(CellDataFeatures<T, Boolean> param) { return propertyAccessor.getProperty(param.getValue()); } }); column.setOnEditCommit(new EventHandler<CellEditEvent<T, Boolean>>() { @Override public void handle(CellEditEvent<T, Boolean> t) { propertyAccessor.getProperty(t.getRowValue()).setValue(t.getNewValue()); } }); column.setCellFactory(CheckBoxTableCell.forTableColumn(column)); column.setEditable(true); }
/** * T Tableobject * Column Display Type */ public static <T> void setupEditableStringColumn(TableColumn<T, String> column, final ColumnStringAccessor<T> propertyAccessor) { column.getTableView().setEditable(true); column.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<T, String>, ObservableValue<String>>() { @Override public ObservableValue<String> call(CellDataFeatures<T, String> param) { return propertyAccessor.getProperty(param.getValue()); } }); column.setEditable(true); column.setOnEditCommit(new EventHandler<CellEditEvent<T, String>>() { @Override public void handle(CellEditEvent<T, String> t) { propertyAccessor.getProperty(t.getRowValue()).setValue(t.getNewValue()); } }); column.setCellFactory(new Callback<TableColumn<T, String>, TableCell<T, String>>() { @Override public TableCell<T, String> call(TableColumn<T, String> param) { return new EditingCell<T>(); } }); }
lastNameCol.setEditable(true); lastNameCol.setCellFactory(TextFieldTableCell.forTableColumn()); lastNameCol.setOnEditCommit(new EventHandler<CellEditEvent<Person, String>>() { @Override public void handle(CellEditEvent<Person, String> t) { ((Person) t.getTableView().getItems().get(t.getTablePosition().getRow())).setLastName(t.getNewValue()); vipCol.setOnEditCommit(new EventHandler<CellEditEvent<Person, Boolean>>() { @Override public void handle(CellEditEvent<Person, Boolean> t) { ((Person) t.getTableView().getItems().get(t.getTablePosition().getRow())).setVip(t.getNewValue());
lastNameCol.setEditable(true); lastNameCol.setCellFactory(TextFieldTableCell.forTableColumn()); lastNameCol.setOnEditCommit(new EventHandler<CellEditEvent<Person, String>>() { @Override public void handle(CellEditEvent<Person, String> t) { ((Person) t.getTableView().getItems().get(t.getTablePosition().getRow())).setLastName(t.getNewValue()); vipCol.setOnEditCommit(new EventHandler<CellEditEvent<Person, Boolean>>() { @Override public void handle(CellEditEvent<Person, Boolean> t) { ((Person) t.getTableView().getItems().get(t.getTablePosition().getRow())).setVip(t.getNewValue());
firstNameCol.setOnEditCommit(new EventHandler<TableColumn.CellEditEvent<Person, String>>() { @Override public void handle(TableColumn.CellEditEvent<Person, String> t) { System.out.println("Edit commit event: " + t.getNewValue());