假設我在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