Zuerst entschuldigung für mein Englisch :) Ich habe einen seltsamen Fehler ... Ich möchte einige Spalten in JavaFX TableView nach dem Drücken der Taste ausblenden. Der Code ist so einfach wie möglich:JavaFX - Fehler beim Rendern von Zellen nach dem Ausblenden von Spalten
column8.visibleProperty().set(false);
column9.visibleProperty().set(false);
(ich auch mit Entfernen mit dem gleichen Ergebnis getestet). Das Problem ist, dass in "Nachbarzelle" habe ich "Separator" von irgendwo nach dieser Aktion. Ich benutze Cellfactories ist mein Code. Für einen der versteckten Zelle ist es
column8.setCellFactory(column -> {
return new TableCell<Anfrage, Mandant>() {
@Override
protected void updateItem(Mandant item, boolean empty) {
super.updateItem(item, empty);
if (item == null || empty) {
setText(null);
} else {
setText(item.getNameMandant());
}
}
};
});
Und für die Zelle, wo ich „Separator“ nach Versteck haben:
//Store
column10.setCellFactory(column -> {
return new TableCell<Anfrage, Terminals>() {
@Override
protected void updateItem(Terminals item, boolean empty) {
super.updateItem(item, empty);
if (item == null || empty) {
setText(null);
} else {
setText(item.getStore());
}
}
};
});
Einige Bilder zu erklären, was eigentlich falsch ist.
Wenn ich auf „true“ wieder every sichtbar gesetzt funktioniert wie erwartet - alle Spalten in es ohne „Separatoren“ sind überall.
Vielen Dank für einen Hinweis!