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.geometry.Insets; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.CheckBox; import javafx.scene.control.Label; import javafx.scene.control.Tooltip; import javafx.scene.layout.HBox; 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) { launch(args); } @Override public void start(Stage stage) { Scene scene = new Scene(new Group()); 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()); } }); ((Group) scene.getRoot()).getChildren().add(cb); stage.setScene(scene); stage.show(); } }
上面的代码生成以下结果。
上一篇:JavaFX切换按钮
下一篇:JavaFX选择框
- Java教程
- Vim教程
- Swing教程
- Spring教程
- Spring Web Services教程
- Spring MVC教程
- Spring JDBC教程
- Spring Cloud教程
- Spring Boot教程
- Spring Boot CLI教程
- Spring Batch教程
- Spring AOP教程
- PDFBox教程
- JSP教程
- JSF教程
- JPA教程
- Java面向对象设计
- Java设计模式
- Java虚拟机教程
- Java泛型教程
- Java正则表达式教程
- Java数据类型教程
- Java并发编程教程
- Java密码学教程
- Java多线程教程
- Java国际化(i18n)教程
- JavaFX教程
- Java9教程
扫描二维码
程序员编程王