顯示TreeTableView我有兩個類:如何與T對象的列表作爲子項目
Project Employee Jobtitle
------------------------- ------------------- ----------------------
name: String firstname: String title: String
employees: List<Employee> jobtitle: Jobtitle hourlyWage: BigDecimal
birthday: Date
如何顯示在如下所示的treetable中編輯值?:
Name fName Title Birthday
------------------------------------------
-Project A
-Tom Programmer 09-12-1980
-Peter Accountant 03-04-1970
-Project B
-Project D
我編程以下目前爲止。如何添加列的員工,因爲員工是一個列表?:
TreeItem<Project> root
= new TreeItem<>(new Project("Root", null));
for (Project project : projectData) {
root.getChildren().add(new TreeItem<>(project));
}
TreeTableColumn<Project, String> projectCol
= new TreeTableColumn<>("Projects");
projectCol.setCellValueFactory((cellData) -> cellData.getValue()
.getValue().nameProperty());
//Now how can I add columns for Employee?
//TreeTableColumn<Project, String> projectCol
// = new TreeTableColumn<>("Firstname");
//projectCol.setCellValueFactory((cellData) -> cellData.getValue()
// .getValue().employeesProperty()...?);
TreeTableView<Project> treeTable = new TreeTableView<>(root);
treeTable.getColumns().add(projectCol);
的數據來自ObservableLists與我硬編碼值(後來,我將使用JPA獲取數據雙向關係,即這樣你就可以得到項目從員工和其他方面)。
private final ObservableList<Jobtitle> jobtitleData
= FXCollections.observableArrayList(
new Jobtitle("Programer", 60),
new Jobtitle("Accountant", 70));
private final ObservableList<Person> employeeData
= FXCollections.observableArrayList(
new Person("Jacob", jobtitleData.get(0), new Date()),
new Person("Peter", jobtitleData.get(1), new Date()),);
private final ObservableList<Project> projectData
= FXCollections.observableArrayList(
new Project("Projekt A", employeeData),
new Project("Projekt B", employeeData));
我讀過tutorial by Oracle,但他們只是涵蓋基本類型。
你的問題是什麼? – talex 2014-09-25 12:18:04
@talex我將問題標記爲粗體。 – haisi 2014-09-25 12:26:44