0
点赞
收藏
分享

微信扫一扫

java多选框如何存取

项目方案: Java 多选框存取器

简介

在Java中,多选框(Checkbox)是常用的用户界面组件,用于让用户从多个选项中选择一个或多个选项。本项目方案旨在提供一个简单可用的代码示例,展示如何在Java中使用多选框以及如何存取用户所选择的选项。

技术栈

  • Java
  • JavaFX(用于构建图形用户界面)

实现步骤

1. 创建JavaFX应用

首先,我们需要创建一个JavaFX应用来构建图形用户界面。以下是一个简单的JavaFX应用示例代码:

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.CheckBox;
import javafx.scene.control.Label;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;

public class CheckboxExample extends Application {

    @Override
    public void start(Stage primaryStage) {
        // 创建多选框
        CheckBox checkBox1 = new CheckBox("选项1");
        CheckBox checkBox2 = new CheckBox("选项2");
        CheckBox checkBox3 = new CheckBox("选项3");

        // 创建标签,用于显示选择结果
        Label label = new Label("未选择");

        // 监听多选框的选择事件
        checkBox1.setOnAction(event -> updateLabel(checkBox1, checkBox2, checkBox3, label));
        checkBox2.setOnAction(event -> updateLabel(checkBox1, checkBox2, checkBox3, label));
        checkBox3.setOnAction(event -> updateLabel(checkBox1, checkBox2, checkBox3, label));

        // 创建布局容器,并添加多选框和标签
        VBox vbox = new VBox(checkBox1, checkBox2, checkBox3, label);

        // 创建场景,并将布局容器添加到场景中
        Scene scene = new Scene(vbox, 300, 200);

        // 设置舞台的标题和场景
        primaryStage.setTitle("多选框示例");
        primaryStage.setScene(scene);

        // 显示舞台
        primaryStage.show();
    }

    // 更新标签的文本,显示用户选择的选项
    private void updateLabel(CheckBox checkBox1, CheckBox checkBox2, CheckBox checkBox3, Label label) {
        String selectedOptions = "";
        if (checkBox1.isSelected()) {
            selectedOptions += checkBox1.getText() + " ";
        }
        if (checkBox2.isSelected()) {
            selectedOptions += checkBox2.getText() + " ";
        }
        if (checkBox3.isSelected()) {
            selectedOptions += checkBox3.getText() + " ";
        }
        if (selectedOptions.isEmpty()) {
            selectedOptions = "未选择";
        }
        label.setText(selectedOptions);
    }

    public static void main(String[] args) {
        launch(args);
    }
}

上述代码中,我们创建了一个简单的JavaFX应用,并在窗口中添加了三个多选框和一个标签。每当用户选择或取消选择多选框时,都会调用updateLabel方法来更新标签的文本,显示用户选择的选项。

2. 存取多选框的选择结果

要存取多选框的选择结果,可以使用一个集合(如ArrayList)来保存用户选择的选项。以下是一个示例代码:

import javafx.application.Application;
import javafx.collections.ObservableList;
import javafx.scene.Scene;
import javafx.scene.control.CheckBox;
import javafx.scene.control.Label;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;

import java.util.ArrayList;
import java.util.List;

public class CheckboxStorageExample extends Application {

    // 创建一个集合,用于存储用户选择的选项
    private List<String> selectedOptions = new ArrayList<>();

    @Override
    public void start(Stage primaryStage) {
        // 创建多选框
        CheckBox checkBox1 = new CheckBox("选项1");
        CheckBox checkBox2 = new CheckBox("选项2");
        CheckBox checkBox3 = new CheckBox("选项3");

        // 创建标签,用于显示选择结果
        Label label = new Label("未选择");

        // 监听多选框的选择事件
        checkBox1.setOnAction(event -> updateLabelAndStorage(checkBox1, checkBox2, checkBox3, label));
        checkBox2.setOnAction(event -> updateLabelAndStorage(checkBox1, checkBox2, checkBox3, label));
        checkBox3.setOnAction(event -> updateLabelAndStorage(checkBox1, checkBox2, checkBox3, label));

        // 创建布局容器,并添加多选框和标签
        VBox vbox = new VBox(checkBox1, checkBox2, checkBox3, label);

        // 创建场景,并将布局容器添加到场景中
        Scene scene = new Scene(vbox, 300, 200);

        // 设置舞台的标题和场景
        primaryStage.setTitle("多选框
举报

相关推荐

0 条评论