我正在使用JavaFX开展项目,并尝试使用以下代码在ListView中启用多选复选框:
ListView<ActivableItem> listView = new ListView<>();
listView.setPrefSize(210, 210);
listView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
listView.setCellFactory(
CheckBoxListCell.forListView(new Callback<ActivableItem, ObservableValue<Boolean>>() {
@Override
public ObservableValue<Boolean> call(ActivableItem item) {
return item.getBooleanProperty();
}
}));
// filling listView and making other stuff
其中ActivableItem是我创建的包含项(泛型类型)和BooleanProperty属性的类。
因此,我有一个带有可检查项目的正确ListView
Shift +单击在单元格上运行良好,我可以选择它们,但复选框似乎不理解SelectionMode.MULTIPLE属性。相反,当我使用shift单击复选框时,单元格甚至没有被选中,它处于焦点模式(如图像中所示)
目前,我正在研究替代解决方案(选择单元格,点击按钮&#34;检查&#34;或创建我自己的单元工厂),但如果我可以使用什么是更方便的话已经制作了,所以......
有可能吗?有没有办法启用多选复选框?
我正在寻求帮助,谢谢。