在DatePicker上隐藏日历按钮?

时间:2015-06-03 21:35:17

标签: javafx datepicker

是否有一种简单的方法可以在JavaFX中隐藏DatePicker节点上的日历按钮?我们的某些日期不可编辑,日历按钮只是添加到字段的宽度。

1 个答案:

答案 0 :(得分:7)

您可以使用以下css删除日历按钮

.date-picker > .arrow-button {
    -fx-padding: 0px;
}

.date-picker > .arrow-button > .arrow {
    -fx-padding: 0px;
}

修改 - 要恢复正确的边框:

.date-picker > .date-picker-display-node {
    -fx-background-insets: 1 1 1 1;
}

修改 - 将上述样式仅应用于少数日期选择器

声明一个DatePicker并向其添加一个样式。

DatePicker nonEditableDatePicker = new DatePicker();
nonEditableDatePicker.getStyleClass().add("non-editable-datepicker");

使用此样式类添加样式:

.non-editable-datepicker > .arrow-button {
    -fx-padding: 0px;
}

.non-editable-datepicker > .arrow-button > .arrow {
    -fx-padding: 0px;
}

.non-editable-datepicker > .date-picker-display-node {
    -fx-background-insets: 1 1 1 1;
}