java list填入table_JavaFX从ObservableList填充TableView

在尝试使用ObservableList中的数据填充JavaFX的TableView时遇到问题,代码中设置了表格列的数据绑定,并确保列表已填充正确数据,但表格未显示任何内容。问题可能与JPA相关,因为Modification类的构造函数未被执行,导致数据无法正确赋值。
摘要由CSDN通过智能技术生成

我正在尝试使用ObservableList中的数据填充TableView . 我以前做过这个,但由于某种原因我现在无法让它工作 . 我没有得到任何例外或任何东西,但它只是不添加任何东西到表 .

this问题类似,但我发现了由JPA引起的另一个问题,因此提到的 Modification 的构造函数从未被执行过 . 相反,JPA可以分配值 .

这是我的代码 - 我剪断了与问题无关的代码:

FXML

Main.java

public class Main extends Application implements Initializable {

private TableView tblModifications;

private TableColumn, String> colModArt;

private TableColumn, String> colModName;

private TableColumn, Integer> colModAmount;

@Override

public void initialize(URL arg0, ResourceBundle arg1){

colModArt.setCellValueFactory(new PropertyValueFactory<>("barcodeProperty"));

colModName.setCellValueFactory(new PropertyValueFactory<>("nameProperty"));

colModAmount.setCellValueFactory(new PropertyValueFactory<>("amountProperty"));

admin = Administration.getInstance();

tblModifications.setItems(admin.observableModifications); // This list is populated with correct data, I tested.

}

@Override

public void start(Stage primaryStage) throws Exception{

resources = ResourceBundle.getBundle("strings", new Locale("NL"));

Parent root = FXMLLoader.load(getClass().getClassLoader().getResource("main.fxml"), resources);

primaryStage.setTitle(resources.getString("title"));

primaryStage.setScene(new Scene(root, 1280, 1024));

primaryStage.show();

}

}

Modification.java

public class Modification {

public SimpleStringProperty barcodeProperty;

public SimpleStringProperty nameProperty;

public SimpleIntegerProperty amountProperty;

private int id;

private Seller seller;

private Product product;

private int amount;

private Boolean accepted;

public Modification(int id, Seller seller, Product product, int amount) {

this.id = id;

this.seller = seller;

this.product = product;

this.amount = amount;

this.accepted = false;

barcodeProperty.set(String.valueOf(product.getBarcode()));

nameProperty.set(product.getName());

amountProperty.set(amount);

}

}

任何帮助解决这个问题将不胜感激!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值