假设我在TreeTableView中有2列,现在我想在第一列中添加一个字符串/标签,在另一列中添加一个ProgressBar。我将如何完成这样的事情?JavaFX:将UI控件添加到TreeTableView
真的很感谢任何帮助!
假设我在TreeTableView中有2列,现在我想在第一列中添加一个字符串/标签,在另一列中添加一个ProgressBar。我将如何完成这样的事情?JavaFX:将UI控件添加到TreeTableView
真的很感谢任何帮助!
正如James_D正确指出的那样,您可以使用ProgressBarTreeTableCell
作为具有ProgressBars的列。有内部支撑用于诸如TextField
,CheckBox
等
对于其他UI控件可以创建自定义TreeTableCell
如图一些其他UI控件:
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);
}
}
}
然后分配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建
总是检查[API](http:// docs .oracle.com/javase/8/javafx/api/javafx/scene/control/cell/ProgressBarTreeTableCell.html); – 2014-10-07 14:14:28
'ProgressBarTreeTableCell',这很酷。让OP将这个用于那些CellFactories不是由JavaFX提供的控件;-) – ItachiUchiha 2014-10-07 14:26:51
请参阅http://stackoverflow.com/questions/16721380/javafx-update-progressbar-in-tableview-from-task,它对“TableView”做相同的处理。 – 2014-10-07 14:01:42