项目场景:
最近在用JavaFX做一个简易的商城界面,大概想实现这样的功能:
- 左边显示用户的最近五个购买的产品 使用ListView
- 点击ListView的项目会定位到相应的tablerow位置 方便用户快速查找
- 中间显示所有可用产品 使用TableView
- 双击tablerow的Item将弹出alert 询问用户购买数量
- 右边是Filter 根据filter将tableview实时分类
问题描述
如何生成一个正确的tableview呢?
public TableView<Item> table= new TableView<>();
在使用 table.setItems(data) 给table传值之前,我们需要给data设置好格式, 常用格式是
private final ObservableList<Item> data = FXCollections.observableArrayList();
紧接着,去给每个tableview中的column设置好cellvalue的映射
nameColumn.setCellValueFactory( new PropertyValueFactory("name"));
这里的名字需要Item类中需要有例如public String getName(