首页 > 解决方案 > 停止编辑日期选择器和组合框字段而不禁用它们

问题描述

我想“禁用”一个日期选择器和组合框(下拉菜单)而不“禁用”它。原因是它们变灰了,您无法正确阅读它们。

我想要与设置文本字段“不可编辑”时相同的功能:

textField.setEditable(false)

有没有办法我可以做到这一点?

标签: javajavafxjavafx-8

解决方案


您可以禁用它DatePicker,然后将其设置为看起来像正常的样式:

DatePicker datePicker = new DatePicker();
datePicker.setDisable(true);
datePicker.setStyle("-fx-opacity: 1.0");

当您禁用 aNode时,JavaFX 将其不透明度设置为0.4; 您可以将其设置回它的来源。

如果您仍然希望允许用户使用下拉菜单选择日期但不输入他们自己的日期,只需设置editable属性:

datePicker.setEditable(false);

推荐阅读