我有关注者http://code.makery.ch/library/javafx-8-tutorial/part2/并且使用lambdas在TableColumn中有一个代码设置值:
firstNameColumn.setCellValueFactory(cellData -> cellData.getValue().firstNameProperty());
lastNameColumn.setCellValueFactory(cellData -> cellData.getValue().lastNameProperty());
但是,如果我有一列fullName并希望将firstNameColumn和lastNameColumn合并为一个fullName,该怎么办?
谢谢你的回答。
答案 0 :(得分:5)
这可以通过创建一个取决于名字和姓氏的StringBinding
来完成:
fullNameColumn.setCellValueFactory(cellData -> Bindings.createStringBinding(
() -> cellData.getValue().getLastName() + ", " + cellData.getValue().getFirstName(),
cellData.getValue().firstNameProperty(),
cellData.getValue().lastNameProperty()
));
答案 1 :(得分:0)
愚蠢的代码有效:
fullNameColumn.setCellValueFactory(cellData -> cellData.getValue().firstNameProperty() + " " + cellData.getValue().lastNameProperty());