0
真的不知道這裏有什麼問題.. UI是使用JavaFX Scene Builder創建的...... 我使用Cell Value Factory來填充TableView與控制器對象中的數據組成:無法看到數據注入到TableView對象,但可以選擇它
final ObservableList<Product> data = FXCollections.observableArrayList(
new Product("milk UHT 3,2%", "2", "3,55"),
new Product("milk UHT 3,2%", "2", "3,55"),
new Product("milk UHT 3,2%", "2", "3,55"),
new Product("milk UHT 3,2%", "2", "3,55"),
new Product("milk UHT 3,2%", "2", "3,55")
);
productNameColum.setCellValueFactory(new PropertyValueFactory<Product, String>("description"));
productQuantityColum.setCellValueFactory(new PropertyValueFactory<Product, String>("quantity"));
productPriceColum.setCellValueFactory(new PropertyValueFactory<Product, String>("price"));
receiptTable.setItems(data);
這裏是我的屬性對象:
private class Product{
private SimpleStringProperty description;
private SimpleStringProperty quantity;
private SimpleStringProperty price;
private String getDescription() {
return description.get();
}
private SimpleStringProperty descriptionProperty() {
return description;
}
private void setDescription(String description) {
this.description.set(description);
}
private String getQuantity() {
return quantity.get();
}
private SimpleStringProperty quantityProperty() {
return quantity;
}
private void setQuantity(String quantity) {
this.quantity.set(quantity);
}
private String getPrice() {
return price.get();
}
private SimpleStringProperty priceProperty() {
return price;
}
private void setPrice(String price) {
this.price.set(price);
}
private Product(String name, String quantity, String price) {
this.description = new SimpleStringProperty(name);
this.quantity = new SimpleStringProperty(quantity);
this.price = new SimpleStringProperty(price);
}
}
啓動它我越來越充滿了看不見的數據:) 表我可以選擇,但不能看到後沒有:
http://i.stack.imgur.com/nhFxD.png
非常感謝RAM! – sw1
問題是我正在使用內部類。將它與控件分離後,它將正常運行 – sw1
如果該類是內部類,則無關緊要。如果Getter是私有的,PropertyValueFactory將不會調用它來檢索值。 –