Bin auf der Suche nach einem TableColumn<CustomObject, String> tableColumn
basierend auf einem Feld Wert in CustomObject
nur wenn das Kontrollkästchen TableColumn<CustomObject, Boolean> tableColumnTwo
aktiviert ist. Ich kann die Textbox innerhalb deaktivieren jedoch nicht sicher, wie der Zustand der Checkbox innerhalb updateItem
zu überprüfen Im Folgenden finden Sie die entsprechenden Code-Schnipsel, wäre sehr dankbar, wenn jemand Licht auf dieseJavaFX Disable TableColumn basierend auf Checkbox-Status
@FXML
private TableColumn<CustomObject, Boolean> tableColumnTwo;
@FXML
private TableColumn<CustomObject, String> tableColumn;
tableColumn.setCellFactory(
new Callback<TableColumn<CustomObject, String>, TableCell<CustomObject, String>>() {
@Override
public TableCell<CustomObject, String> call(TableColumn<CustomObject, String> paramTableColumn) {
return new TextFieldTableCell<CustomObject, String>(new DefaultStringConverter()) {
@Override
public void updateItem(String s, boolean empty) {
super.updateItem(s, empty);
TableRow<CustomObject> currentRow = getTableRow();
if(currentRow.getItem() != null && !empty) {
if (currentRow.getItem().getPetrified() == false) { // Need to check if checkbox is checked or not
setDisable(true);
setEditable(false);
this.setStyle("-fx-background-color: red");
} else {
setDisable(false);
setEditable(true);
setStyle("");
}
}
}
};
}
});
https://stackoverflow.com/help/how-to-ask oder mit anderen Worten: Bitte geben Sie ein ausführbares Beispiel an, das Ihnen zeigt, was Sie suchen und wie Sie Ihr Ziel nicht erreichen können :) – kleopatra