假设我在 TreeTableView 中有 2 列,现在我想在第一列中添加字符串/标签,在另一列中添加 ProgressBar。我将如何完成这样的事情?
非常感谢任何帮助!
假设我在 TreeTableView 中有 2 列,现在我想在第一列中添加字符串/标签,在另一列中添加 ProgressBar。我将如何完成这样的事情?
非常感谢任何帮助!
正如 James_D 正确指出的那样,您可以使用ProgressBarTreeTableCell
带有 ProgressBars 的列。有对其他一些 UI 控件的内部支持,例如TextField
等CheckBox
。
对于其他 UI 控件,您可以创建一个自定义TreeTableCell
,如下所示:
private class ProgressCell extends TreeTableCell<Employee, String> {
final ProgressBar progress = new ProgressBar();
ProgressCell() {
}
@Override
protected void updateItem(String t, boolean empty) {
super.updateItem(t, empty);
if (!empty) {
setGraphic(progress);
}
}
}
然后将 a 分配CellFactory
给第二列
secondCol.setCellFactory(
new Callback<TreeTableColumn<Employee, String>, TreeTableCell<Employee, String>>() {
@Override
public TreeTableCell<Employee, String> call(
TreeTableColumn<Employee, String> param) {
return new ProgressCell();
}
});
Employee
构建 TreeTableView 的 POJO 类在哪里