javafx - 如果值为 null 并且包含选定的值,则禁用组合框
问题描述
我有两个组合框示例组合框 a 和 b。当comboBox an为null并且从comboBox a中选择特定值时,我想禁用comboBox b。
comboboxb.disableProperty().bind(
JavaFxObserver.toBinding(
JavaFxObservable.nullableValuesOf(comboboxa.getSelectionModel().selectedItemProperty())
.map(test -> !comboboxaEnum.isPresent() || comboboxaEnum.equals(comboboxaEnum.XX) ))
);
仅当 comboBox 为空时才禁用。
解决方案
如果需要检查两个条件,则使用Bindings
逻辑运算:
comboBoxB.disableProperty().bind(
Bindings.or(
Bindings.equal(comboBoxA.getSelectionModel().selectedItemProperty(), "Value Which Disables"),
Bindings.isNull(comboBoxA.getSelectionModel().selectedItemProperty())
));
推荐阅读
- regex - 正则表达式 unix 命令
- c++ - LuaC 库:某些函数的访问冲突
- createjs - CreateJS 使 Cache Empty 不断占用内存?
- python - 如何在 python 中从 MultiIndexed pandas 数据框创建数组树
- php - Symfony 4 骨架,调用 php binance api 和 php binance api 速率限制器时出错
- javascript - 使用 Webpack 构建静态站点生成器
- scala - Intellij - 工作表找不到类
- c - C 是否需要堆栈和堆才能运行?
- html - 我可以仅使用 CSS 在悬停时定位此元素吗?
- c# - 如何在 MVC 模型中操作字符串