如何在 javaFx(场景构建器)的 DatePicker 中禁用过去的日期

חיי*_*חדד 3 javafx datepicker

我在场景构建器上创建了一个 DatePicker。我想让它禁用日期,以强制用户从当天选择日期,但我不知道该怎么做。我看到的所有示例都不是用 Java 写的(当然我的项目是用 Java 写的)。

小智 6

我遇到过同样的问题。这是对我有用的一段代码。

DatePicker dp = new DatePicker();
dp.setDayCellFactory(picker -> new DateCell() {
        public void updateItem(LocalDate date, boolean empty) {
            super.updateItem(date, empty);
            LocalDate today = LocalDate.now();

            setDisable(empty || date.compareTo(today) < 0 );
        }
    });
Run Code Online (Sandbox Code Playgroud)

这将使那些与 LocalDate.now() (返回当天日期)相比更小的日子变得不可用,所以前几天。