Module  javafx.controls
软件包  javafx.scene.control

Class CheckBox

  • All Implemented Interfaces:
    StyleableEventTargetSkinnable


    public class CheckBox
    extends ButtonBase
    三态选择控件通常在选中时以带有复选标记或刻度标记的方式打包。 CheckBox控件可以处于三种状态之一:
    • checked :indeterminate == false,checked == true
    • 未选中 :indeterminate == false,checked == false
    • undefined :indeterminate == true
    如果勾选了CheckBox,那么也按定义定义。 勾选CheckBox时,通常会使用“check”或“tick”标记。 如果选择为true并且indeterminate为false,则CheckBox处于此状态。

    如果选择为false并且indeterminate为false,则取消选中复选框。

    如果indeterminate为true,则复选框未定义,无论选择的状态如何。 典型的渲染将是带有减号或破折号,以指示复选框的未定义或不确定状态。 这对于构建基于三态复选框的树很方便,例如,未定义的复选框通常意味着“继承父设置”。

    allowIndeterminate变量(如果为true)允许用户循环访问未定义的状态。 如果为false,则复选框不处于不确定状态,并且允许用户仅更改已检查状态。

    例:

      CheckBox cb = new CheckBox("a checkbox"); cb.setIndeterminate(false); 

    默认情况下启用助记符分配功能。

    从以下版本开始:
    JavaFX 2.0
    • 构造方法详细信息

      • CheckBox

        public CheckBox​()
        为其标签创建一个带有空字符串的复选框。
      • CheckBox

        public CheckBox​(String text)
        创建一个带有指定文本的复选框作为其标签。
        参数
        text - 其标签的文本字符串。
    • 方法详细信息

      • setIndeterminate

        public final void setIndeterminate​(boolean value)
        设置属性的值不确定。
        Property description:
        确定复选框是否处于不确定状态。
      • isIndeterminate

        public final boolean isIndeterminate​()
        获取属性的值不确定。
        Property description:
        确定复选框是否处于不确定状态。
      • setSelected

        public final void setSelected​(boolean value)
        设置所选属性的值。
        Property description:
        指示是否选中此复选框。
      • isSelected

        public final boolean isSelected​()
        获取所选属性的值。
        Property description:
        指示是否选中此复选框。
      • setAllowIndeterminate

        public final void setAllowIndeterminate​(boolean value)
        设置属性allowIndeterminate的值。
        Property description:
        确定用户是否切换复选框应该循环遍历所有三个状态:已选中未选中未定义 如果是true那么所有三个州将循环通过; 如果是false那么只有选中取消选中才会循环。
      • isAllowIndeterminate

        public final boolean isAllowIndeterminate​()
        获取属性allowIndeterminate的值。
        Property description:
        确定用户是否切换复选框应该循环遍历所有三个状态:已选中未选中未定义 如果是true那么所有三个州都将循环通过; 如果是false那么只有选中取消选中才会循环。
      • allowIndeterminateProperty

        public final BooleanProperty allowIndeterminateProperty​()
        确定用户是否切换复选框应该循环遍历所有三个状态:已选中未选中未定义 如果是true那么所有三个州都将循环通过; 如果false那么只有检查取消选中才能循环。
        另请参见:
        isAllowIndeterminate()setAllowIndeterminate(boolean)
      • fire

        public void fire​()
        切换CheckBox的状态。 如果allowIndeterminate为true,则此函数的每次调用将通过已选中,未选中和未定义的状态来提前复选框。 如果allowIndeterminate为false,那么CheckBox只会循环执行已检查和未检查的状态,并强制不确定等于false。
        Specified by:
        fireButtonBase
      • createDefaultSkin

        protected Skin<?> createDefaultSkin​()
        为此控件创建一个新的默认皮肤实例。 如果没有通过CSS -fx-skin提供皮肤或在具有setSkin(...)的子类中显式设置,则调用此控件创建皮肤。
        重写:
        createDefaultSkinControl
        结果
        此控件的默认皮肤的新实例。 如果为null,则控件将没有皮肤,除非由css提供。
      • queryAccessibleAttribute

        public Object queryAccessibleAttribute​(AccessibleAttribute attribute,
                                               Object... parameters)
        该方法由辅助技术调用以请求属性的值。

        子类通常覆盖此方法来实现特定角色所需的属性。
        如果未处理特定属性,则必须调用超类实现。

        重写:
        queryAccessibleAttributeControl
        参数
        attribute - 请求的属性
        parameters - 可选参数列表
        结果
        请求的属性的值
        另请参见:
        AccessibleAttribute