textField.textProperty().addListener(new InvalidationListener() { @Override public void invalidated(Observable observable) { if(textField.textProperty().get().isEmpty()) { tableView.setItems(dataList); return; } ObservableList<ClassModel> tableItems = FXCollections.observableArrayList(); ObservableList<TableColumn<ClassModel, ?>> cols = tableView.getColumns(); for(int i=0; i<dataList.size(); i++) { for(int j=0; j<cols.size(); j++) { TableColumn col = cols.get(j); String cellValue = col.getCellData(dataList.get(i)).toString(); cellValue = cellValue.toLowerCase(); if(cellValue.contains(textField.textProperty().get().toLowerCase())) { tableItems.add(data.get(i)); break; } } } tableView.setItems(tableItems); } });
static boolean containsCell(TableView<?> table, Object cellValue) { for( TableColumn<?, ?> column : table.getColumns() ) { for(int i=0; i<table.getItems().size(); i++ ) { Object cellData = column.getCellData( i ); if( cellValue.equals( cellData ) || cellValue.equals( cellData.toString() ) ) return true; } } return false; }
static boolean containsCell(TableView<?> table, Predicate<String> cellPredicate) { for( TableColumn<?, ?> column : table.getColumns() ) { for(int i=0; i<table.getItems().size(); i++ ) { Object cellData = column.getCellData( i ); if( cellPredicate.apply( cellData.toString() ) ) return true; } } return false; }
static boolean containsCell(TableView<?> table, Object cellValue) { // return getFlattenedColumns(table) // .stream() // .map(v -> { // }) // .anyMatch(cellData -> cellValue.equals(cellData) || cellValue.equals(cellData.toString())); for (TableColumn<?, ?> column : getFlattenedColumns(table)) { for (int i = 0; i < table.getItems().size(); i++) { Object cellData = column.getCellData(i); if (cellValue.equals(cellData) || cellValue.equals(cellData.toString())) { return true; } } } return false; }
static boolean containsCell(TableView<?> table, Predicate<String> cellPredicate) { // return getFlattenedColumns(table) // .stream() // .map(col -> {col.}) // .anyMatch(cellData -> cellPredicate.apply(cellData.toString())); for (TableColumn<?, ?> column : getFlattenedColumns(table)) { for (int i = 0; i < table.getItems().size(); i++) { Object cellData = column.getCellData(i); if (cellPredicate.test(cellData.toString())) { return true; } } } return false; }
/** * @param tableSelector CSS selector * @param row row number * @param column column number * @return Der Wert der gegebenen Zelle in der Tabelle. Es handelt sich nicht um das, was auf * der UI dransteht, * sondern um den Wert, also nicht notwendigerweise ein String. */ protected static Object cellValue(String tableSelector, int row, int column) { return getTableView(tableSelector).getColumns().get(column).getCellData(row); }
private String createCsvFromTable(TableView<T> tableView) { StringBuilder result = new StringBuilder(); for (TableColumn<?, ?> column : tableView.getColumns()) { result.append(escapeCsvString(column.getText())).append("\t"); } result.append("\n"); for (int i = 0; i < tableView.getItems().size(); i++) { for (TableColumn<?, ?> column : tableView.getColumns()) { Object cellData = column.getCellData(i); String data = ""; if (cellData != null) { data = cellData.toString(); } result.append(escapeCsvString(data)).append("\t"); } result.append("\n"); } return result.toString(); }
/** * @param tableSelector CSS selector * @param row row number * @param column column number * @return Der Wert der gegebenen Zelle in der Tabelle. Es handelt sich nicht um das, was auf der UI dransteht, * sondern um den Wert, also nicht notwendigerweise ein String. */ protected static Object cellValue(String tableSelector, int row, int column) { return getTableView(tableSelector).getColumns().get(column).getCellData(row); }
table.setEditable(true); table.getSelectionModel().setCellSelectionEnabled(true); // selects cell only, not the whole row table.setOnMouseClicked(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent click) { if (click.getClickCount() == 2) { @SuppressWarnings("rawtypes") TablePosition pos = table.getSelectionModel().getSelectedCells().get(0); int row = pos.getRow(); int col = pos.getColumn(); @SuppressWarnings("rawtypes") TableColumn column = pos.getTableColumn(); String val = column.getCellData(row).toString(); System.out.println("Selected Value, " + val + ", Column: " + col + ", Row: " + row); if ( col == 2 ) { ... do something ... } if ( col == 5 ) { ... do something ... } if ( col == 6 ) { ... do something ... } if ( col == 8 ) { ... do something ... } } } });
private void copyTable(final TableView<?> tableView) { StringBuilder clipboardString = new StringBuilder(); for (int row = 0; row < tableView.getItems().size(); row++) { for (int column = 0; column < tableView.getColumns().size(); column++) { Object cell = tableView.getColumns().get(column).getCellData(row); clipboardString.append(cell); clipboardString.append("\t"); } clipboardString.append("\n"); } final ClipboardContent content = new ClipboardContent(); content.putString(clipboardString.toString()); Clipboard.getSystemClipboard().setContent(content); }
Object cell = column.getCellData(item); if (cell != null && cell.toString() != null) { String val = cell.toString();
int col = position.getColumn(); Object cell = (Object) table.getColumns().get(col).getCellData(row);
private void copyTableCell(final TableView<?> tableView) { StringBuilder clipboardString = new StringBuilder(); for (TablePosition<?, ?> tablePosition : tableView.getSelectionModel().getSelectedCells()) { Object cell = tableView.getColumns().get(tablePosition.getColumn()).getCellData(tablePosition.getRow()); clipboardString.append(cell); } final ClipboardContent content = new ClipboardContent(); content.putString(clipboardString.toString()); Clipboard.getSystemClipboard().setContent(content); }
private void copyTableCell(final TableView<?> tableView) { StringBuilder clipboardString = new StringBuilder(); for (TablePosition<?, ?> tablePosition : tableView.getSelectionModel().getSelectedCells()) { Object cell = tableView.getColumns().get(tablePosition.getColumn()).getCellData(tablePosition.getRow()); clipboardString.append(cell); } final ClipboardContent content = new ClipboardContent(); content.putString(clipboardString.toString()); Clipboard.getSystemClipboard().setContent(content); }
/** * Configures the table to copy a cell via Crtl-C to the clipboard. */ @SuppressWarnings("unchecked") protected void enableCopyToClipboard() { getSelectionModel().setCellSelectionEnabled(true); getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE); setOnKeyPressed(e -> { if (e.isControlDown() && e.getCode() == KeyCode.C) { StringBuilder buf = new StringBuilder(); for (TablePosition<S,?> pos: getSelectionModel().getSelectedCells()) { Object cell = getColumns().get(pos.getColumn()).getCellData(pos.getRow()); if (cell != null) { if (buf.length() > 0) { buf.append('\t'); } buf.append(cell); } } if (buf.length() > 0) { ClipboardContent cbc = new ClipboardContent(); cbc.putString(buf.toString()); Clipboard.getSystemClipboard().setContent(cbc); } } }); }