我是javaFx的初学者,现在我正在使用在线toturial的帮助将我的Person Objects中的数据插入到我的tableView。但是我的代码有一些问题。既没有编译时也没有运行时错误。但是没有我的tableView中的数据。作为javaFx的初学者,我已经检查了很长时间的代码。但我不知道为什么会这样。请你看看那个吗?这是我的模态类,Person.java < / p>
Lines:2
这是我的控制器类
public class Person {
public SimpleStringProperty firstName;
public SimpleStringProperty lastName;
public Person(String fName, String lName) {
this.firstName = new SimpleStringProperty(fName);
this.lastName = new SimpleStringProperty(lName);
}
}
这是我的FXML代码
public class FXMLDocumentController implements Initializable {
private ObservableList<Person> personData = FXCollections.observableArrayList();
@FXML
private TableView<Person> table;
@FXML
private TableColumn<Person, String> col1;
@FXML
private TableColumn<Person, String> col2;
@Override
public void initialize(URL url, ResourceBundle rb) {
col1.setCellValueFactory(
new PropertyValueFactory<Person,String>("firstName")
);
col2.setCellValueFactory(
new PropertyValueFactory<Person,String>("lastName")
);
personData.add(new Person("John","Leon"));
System.out.println("data to collection added");
table.setItems(personData);
System.out.println("collection to table added");
}
}
感谢您的关注
答案 0 :(得分:1)
您应该在Person
班级中使用这些方法:
public String getFirstName() {
return firstName.get();
}
public void setFirstName(String s) {
firstName.set(s);
}
public String getLastName() {
return lastName.get();
}
public void setLastName(String s) {
lastName.set(s);
}