我有一个TableView,里面有TableColumns(Screenshot of the program)
该方法接收用户的ArrayList(potentialFriends)。对象用户包括全名,电子邮件,爱好,专业和匹配分数。我想用TableList中的每个User对象的信息填充表。它是如何完成的?我做了一些研究,但似乎没有任何效果。 这是一段代码,如果它有帮助:
public class AlgorithmController {
@FXML
private TableView<User> table;
@FXML
private TableColumn<User,String> nameCol;
@FXML
private TableColumn<User,String> majorCol;
@FXML
private TableColumn<User,String> mailCol;
@FXML
private TableColumn<User,String> hobbyCol;
@FXML
private TableColumn<User,String> scoreCol;
private User user;
private ArrayList<User> potentialFriends;
public void initialize(){
DatabaseStack database = new DatabaseStack();
MatchingAlgorithm testAlg = new MatchingAlgorithm(database.getDatabase());
user = Mediator.getInstance().getUser();
potentialFriends = testAlg.findAFriendAlgorithm(user,0,database.getDatabase().size());
}}
感谢您的时间和精力!
答案 0 :(得分:0)
为每列设置cellValueFactory。 例如,
nameCol.setCellValueFactory(new PropertyValueFactory<User,String>("Specify nameCol variable name the same as in User class"));
然后添加数组列表。
table.setItems(potentialFriends);
如果添加数组列表不起作用,请尝试使用ObservableList
而不是ArrayList
。