JavaFX - 隐藏列后单元格渲染中的错误
JavaFX - bug in cell render after hiding columns
首先对不起我的英语:)
我有一个奇怪的错误......我想在按下按钮后隐藏 JavaFX TableView 中的一些列。代码越简单越好:
column8.visibleProperty().set(false);
column9.visibleProperty().set(false);
(我也用 remove 测试了同样的结果)。
问题是在 "neighboring cell" 中我从某个地方得到了 "separator" 。
我使用 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());
}
}
};
});
对于单元格,隐藏后我有 "separator":
//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",一切都会按预期工作 - 所有列都在那里,没有任何 "separators" 任何地方。
非常感谢您的建议!
因此,最终在 JavaFX 8u60 中解决了表视图刷新问题。现在 "native" table.refresh()
开始吧。
首先对不起我的英语:) 我有一个奇怪的错误......我想在按下按钮后隐藏 JavaFX TableView 中的一些列。代码越简单越好:
column8.visibleProperty().set(false);
column9.visibleProperty().set(false);
(我也用 remove 测试了同样的结果)。 问题是在 "neighboring cell" 中我从某个地方得到了 "separator" 。 我使用 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());
}
}
};
});
对于单元格,隐藏后我有 "separator":
//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",一切都会按预期工作 - 所有列都在那里,没有任何 "separators" 任何地方。
非常感谢您的建议!
因此,最终在 JavaFX 8u60 中解决了表视图刷新问题。现在 "native" table.refresh()
开始吧。