@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; }
@Override public void configure(FxTableView<S> table) { table.getColumns().clear(); boolean tableEditable = false; for (TableColumnConfiguration<S,?> config: nameColumnConfigMap.values()) { boolean columnEditable = config.isEditable(); tableEditable |= columnEditable; TableColumn<S,?> column = config.getTableColumn(); column.setEditable(columnEditable); table.getColumns().add(column); } table.setEditable(tableEditable); table.getSelectionModel().cellSelectionEnabledProperty().set(tableEditable); table.setConfiguration(this); }
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); }
public static <T> List<TableColumn<T, ?>> createColumns(Class<T> entityType, ExceptionHandler exceptionHandler) { List<TableColumn<T, ?>> columns = new ArrayList<>(); for (Field field : entityType.getDeclaredFields()) { ViewColumn columnAnnotation = field.getAnnotation(ViewColumn.class); if (columnAnnotation != null) { TableColumn<T, ?> column = new TableColumn<>(); column.setText(columnAnnotation.value()); column.setEditable(columnAnnotation.editable()); column.setSortable(columnAnnotation.sortable()); column.setResizable(columnAnnotation.resizeable()); column.setCellValueFactory(e -> { try { return new SimpleObjectProperty(DataFXUtils.getPrivileged(field, e.getValue())); } catch (Exception exception) { exceptionHandler.setException(exception); return null; } }); columns.add(column); } } return columns; } }
public static <T> List<TableColumn<T, ?>> createColumns(Class<T> entityType, ExceptionHandler exceptionHandler) { List<TableColumn<T, ?>> columns = new ArrayList<>(); for (Field field : entityType.getDeclaredFields()) { ViewColumn columnAnnotation = field.getAnnotation(ViewColumn.class); if (columnAnnotation != null) { TableColumn<T, ?> column = new TableColumn<>(); column.setText(columnAnnotation.value()); column.setEditable(columnAnnotation.editable()); column.setSortable(columnAnnotation.sortable()); column.setResizable(columnAnnotation.resizeable()); column.setCellValueFactory(e -> { try { return new SimpleObjectProperty(DataFXUtils.getPrivileged(field, e.getValue())); } catch (Exception exception) { exceptionHandler.setException(exception); return null; } }); columns.add(column); } } return columns; } }
/** * 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>(); } }); }
c.setEditable(true); return c;
lastNameCol.setEditable(true); lastNameCol.setCellFactory(TextFieldTableCell.forTableColumn()); lastNameCol.setOnEditCommit(new EventHandler<CellEditEvent<Person, String>>() { vipCol.setEditable(true); vipCol.setCellFactory(CheckBoxTableCell.forTableColumn(vipCol)); final Callback<TableColumn<Person, Boolean>, TableCell<Person, Boolean>> cellFactory = CheckBoxTableCell.forTableColumn(vipCol);
lastNameCol.setEditable(true); lastNameCol.setCellFactory(TextFieldTableCell.forTableColumn()); lastNameCol.setOnEditCommit(new EventHandler<CellEditEvent<Person, String>>() { vipCol.setEditable(true); vipCol.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<Person, Boolean>, ObservableValue<Boolean>>() {
textColumn.setPrefWidth(200); textColumn.setMinWidth(100); textColumn.setEditable(true); textColumn.setCellValueFactory(this::getColumnContent); textColumn.setCellFactory(this::getTableCell);
textColumn.setPrefWidth(200); textColumn.setMinWidth(100); textColumn.setEditable(true); textColumn.setCellValueFactory(this::getColumnContent); textColumn.setCellFactory(this::getTableCell);