我正在尝试使用 TableView 创建一个表,并根据 User
对象列表以编程方式填充它。 User
有三个变量,nameProperty
(String), rankProperty
(Enum called Rank), and netMeritsProperty
(int ).这些都存储在 SimpleStringProperty
对象中。我的问题是数据不会出现在实际表格中,如下所示:
这是我的表格代码。我有什么不明白的?
TableColumn<User, String> name = new TableColumn<>("Name");
name.setCellValueFactory(new PropertyValueFactory<User, String>("nameProperty"));
TableColumn<User, String> rank = new TableColumn<>("Rank");
rank.setCellValueFactory(new PropertyValueFactory<User, String>("rankProperty"));
TableColumn<User, String> netMerits = new TableColumn<>("Net Merits");
netMerits.setCellValueFactory(new PropertyValueFactory<User, String>("netMeritsProperty"));
userTable.getColumns().addAll(name, rank, netMerits);
最佳答案
答案就是注意,你给PropertyValueFactory
的参数是哪些字符串内容,你封装的数据类型中实现了哪些方法。
实例化:
new PropertyValueFactory<User, String>("name")
将查找:
User.nameProperty()
关于java - 如何正确使用 PropertyValueFactory?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16377820/