我有一堂电影课。 actor保存在String []中。我用SceneBuilder创建了一个GUI。我正在设置每个TC的值:
tableDirector.setCellValueFactory(new PropertyValueFactory<>("Director"));
tableActors.setCellValueFactory(new PropertyValueFactory<>(("actors")));
这适用于所有非收藏品的东西,但我不能因为爱的一切圣洁的想法如何将String []中的几个字符串放在一个列中。我错过了什么吗?
答案 0 :(得分:0)
假设您未显示的所有代码都是正确的,您可以执行
tableActors.setCellFactory(tc -> new TableCell<Movie, String[]>() {
@Override
protected void updateItem(String[] actors, boolean empty) {
super.updateItem(actors, empty);
if (empty || actors == null) {
setText(null);
} else {
setText(String.join(", ", actors));
}
}
});
更复杂的单元工厂可能会生成一个以ListView
或类似选项显示actor的单元格。
请注意,cellFactory
是您已定义的cellValueFactory
的补充。