JavaFX复选框

复选框允许用户进行多项选择。例如,当订购披萨时,可以添加多个调味料。单选按钮或切换按钮用于单选或无选择。

创建复选框

我们可以使用CheckBox中的构造函数来创建CheckBox的对象。

创建不带标题的复选框,如下代码所示 -

CheckBox checkBox = new CheckBox();

要创建带有字符串标题的复选框,如下代码所示 -

CheckBox checkBox = new CheckBox("Second");

创建复选框后,我们可以更改其文本并将其选中。

checkBox.setText("First");
checkBox.setSelected(true);

复选框状态

可以使用CheckBox来表示三个状态:

  • Yes
  • No
  • Not Applicable(不适用)

“不适用”状态是调用不确定。 如果复选框不在不确定中,可以选择或不选择。 选择表示,未选择表示

我们可以通过设置CheckBox对象的allowIndeterminate属性来选择支持Indeterminate。

如果设置为true,则复选框应该循环选择所有三个状态:选中,取消选择和未定义。

如果设置为false,复选框将循环选择和取消选择的状态。

示例

以下代码显示了如何向CheckBox添加工具提示。


import javafx.application.Application;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.effect.DropShadow;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.input.MouseEvent;
import javafx.scene.layout.HBox;
import javafx.scene.layout.StackPane;
import javafx.scene.layout.VBox;
import javafx.scene.text.Font;
import javafx.stage.Stage;

public class Main extends Application {

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

    @Override
    public void start(Stage stage) {
        Group root = new Group();
        Scene scene = new Scene(root);
        stage.setTitle("Tooltip Sample");
        stage.setWidth(300);
        stage.setHeight(150);
        final CheckBox cb = new CheckBox("checkBox");
        final Tooltip tooltip = new Tooltip("$ tooltip");
        tooltip.setFont(new Font("Arial", 16));
        cb.setTooltip(tooltip);
        cb.selectedProperty().addListener(new ChangeListener<Boolean>() {
            public void changed(ObservableValue<? extends Boolean> ov,
                                Boolean old_val, Boolean new_val) {
                System.out.println(cb.isSelected());
            }
        });

        root.getChildren().add(cb);

        stage.setScene(scene);
        stage.show();
    }
}

  • 10
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaFX Dialog提供了多种选择框,包括单选框、复选框、下拉框等。下面是几个常见的示例: 1. 单选框 单选框用于从多个选项中选择一个。可以使用ToggleGroup将多个单选框归为一组,只有其中一个可以被选中。 ```java ToggleGroup group = new ToggleGroup(); RadioButton rb1 = new RadioButton("Option 1"); RadioButton rb2 = new RadioButton("Option 2"); RadioButton rb3 = new RadioButton("Option 3"); rb1.setToggleGroup(group); rb2.setToggleGroup(group); rb3.setToggleGroup(group); ``` 2. 复选框 复选框用于从多个选项中选择多个。每个复选框都有一个选中状态,可以使用isSelected()方法获取其状态。 ```java CheckBox cb1 = new CheckBox("Option 1"); CheckBox cb2 = new CheckBox("Option 2"); CheckBox cb3 = new CheckBox("Option 3"); ``` 3. 下拉框 下拉框用于从多个选项中选择一个。可以使用ChoiceBox或ComboBox创建下拉框,它们都需要一个ObservableList作为数据源。 ```java ObservableList<String> options = FXCollections.observableArrayList( "Option 1", "Option 2", "Option 3"); ChoiceBox<String> cb = new ChoiceBox<>(options); ComboBox<String> cb2 = new ComboBox<>(options); ``` 4. 列表框 列表框用于从多个选项中选择多个。可以使用ListView或TableView创建列表框,它们都需要一个ObservableList作为数据源。 ```java ObservableList<String> options = FXCollections.observableArrayList( "Option 1", "Option 2", "Option 3"); ListView<String> lv = new ListView<>(options); TableView<String> tv = new TableView<>(options); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值