Прежде всего, извините за мой английский :) У меня есть странная ошибка... Я хотел бы скрыть некоторые столбцы в JavaFX TableView после нажатия кнопки. Код максимально прост:
column8.visibleProperty().set(false);
column9.visibleProperty().set(false);
(Я также тестировал удаление с тем же результатом). Проблема в том, что в "соседней ячейке" у меня откуда-то появляется "разделитель" после этого действия. Я использую Cellfactories, это мой код. Для одной из скрытых ячеек это
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());
}
}
};
});
И для ячейки, где у меня есть "разделитель" после скрытия:
//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());
}
}
};
});
Несколько фотографий, чтобы объяснить, что на самом деле не так.
Если я снова установлю для видимости значение «true», все будет работать так, как ожидалось — все столбцы будут там без каких-либо «разделителей».
Большое спасибо за любой совет!