I'm trying to populate a TableView that consists of two columns (name and email), but the columns remain empty.
Here's the controller code:
public class GUIMainController
{
@FXML private TableView<Member> tableMembers;
@FXML private TableColumn<Member, String> tcMemberName;
@FXML private TableColumn<Member, String> tcMemberEmail;
public void initialize()
{
tcMemberName.setCellValueFactory(new PropertyValueFactory<Member, String>("name"));
tcMemberEmail.setCellValueFactory(new PropertyValueFactory<Member, String>("email"));
tableMembers.setItems(getList());
}
public ObservableList<Member> getList()
{
ObservableList<Member> members = FXCollections.observableArrayList();
members.add(new Member("Frank","frankie678@gmail.com"));
System.out.println(members);
return members;
}
}
And the constructor for data:
public Member(String name, String email)
{
this.name = name;
this.email = email;
}
public String getMemberName()
{
return this.name;
}
public void setMemberName(String name)
{
this.name = name;
}
public String getMemberEmail()
{
return this.email;
}
public void setMemberEmail(String email)
{
this.email = email;
}
I can see the correct data on the console, but it does not show in the table itself.
Can anyone help? Thanks in advance!