java - 选中复选框时启用文本框

标签 java user-interface javafx

我有一个包含一个复选框和一个文本框的对话框。仅当选中该复选框时才应启用文本框。

目前我尝试使用以下绑定(bind)来执行此操作。

CheckBox cbox = new CheckBox("Enable textbox");
TextBox tbox = new TextBox();
tbox.disableProperty().bind(cbox.selectedProperty());

但这具有与我想要的完全相反的效果(当我选择该复选框时,文本框将被禁用)。我在文本框中找不到“enableProperty”。

我发现文本框有一个“editableProperty()”,并将其绑定(bind)到 selectedProperty 具有我想要的部分所需效果。不过,我觉得禁用仍然是一个更好的选择,因为它在视觉上更直观。

这可能是一个简单的修复方法,但是当选中复选框时,我到底该如何绑定(bind)属性才能启用文本框?

最佳答案

tbox.disableProperty().bind(cbox.selectedProperty());

这意味着当选择 cbox 时,tbox 将禁用。您可以使用 not 属性:

tbox.disableProperty().bind(cbox.selectedProperty().not());

关于java - 选中复选框时启用文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59056742/

相关文章:

java - 重用对象的最佳方式

java - SQLException : Operation not allowed after ResultSet closed error

java - 将JavaCV作为依赖项添加到Raspberry PI上运行?

android - 如何配置ListView自动改变高度?

JavaFX并发: Update multiple messages from Service

java - 没有数据库的简单 Jasper 报告

python - 将参数传递给 QT Designer 构建的槽函数

c++ - 带有 qt5 (qml) 的无框窗口

java - 如何使用 JavaFX 检测 Canvas 上的鼠标拖动事件

css - 如何在保持矩形背景颜色的同时将 ImagePattern 添加到矩形