javafx实现多选功能
时间: 2024-02-03 22:03:33 浏览: 138
JavaFX提供了一个名为`ListView`的控件,可以用于实现多选功能。以下是一个简单的示例代码:
```java
ListView<String> listView = new ListView<>();
listView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
ObservableList<String> items = FXCollections.observableArrayList();
items.addAll("Item 1", "Item 2", "Item 3", "Item 4", "Item 5");
listView.setItems(items);
Button button = new Button("Get Selected Items");
button.setOnAction(event -> {
ObservableList<String> selectedItems = listView.getSelectionModel().getSelectedItems();
System.out.println("Selected Items: " + selectedItems);
});
VBox vbox = new VBox();
vbox.getChildren().addAll(listView, button);
Scene scene = new Scene(vbox, 300, 200);
stage.setScene(scene);
stage.show();
```
在上面的代码中,我们创建了一个`ListView`控件,并将其选择模式设置为`SelectionMode.MULTIPLE`,这样用户就可以通过按住`Ctrl`键来多选。我们还创建了一个按钮,当用户单击该按钮时,我们将获取选择的项目并将其打印到控制台上。最后,我们将`ListView`和按钮添加到`VBox`中,并将其作为场景的根节点。
阅读全文