0
我正在处理日历应用程序,该应用程序将从ArrayList中检索日期值,该日期值从SQL数据库中检索字符串值。格式化是通过一天细胞工厂实现的。来自ArrayList的javafx格式单元格
问题是,不仅ArrayList的日期格式化,整个月的单元格都有绿色背景。任何人有什么我做错了什么暗示?
我一年前开始使用Python进行编程,而且我现在只使用JavaFx几个月,所以我对ArrayLists和cell工厂的经验仍然非常有限。
任何帮助将不胜感激。以下是我迄今为止....
ObservableList<LocalDate> dates = FXCollections.observableArrayList();
LocalDate date_1 = LocalDate.parse("2017-05-20");
LocalDate date_2 = LocalDate.parse ("2017-05-18");
dates.add(date_1);
dates.add(date_2);
Callback<DatePicker, DateCell> dayCellFactory = new Callback<DatePicker, DateCell>() {
public DateCell call (final DatePicker datePicker) {
return new DateCell() {
@Override
public void updateItem (LocalDate item , boolean empty) {
super.updateItem(item, empty);
for (LocalDate ldt : dates) {
this.setStyle("-fx-background-color: green");
this.setTextFill(Color.BLACK);
this.setTooltip(new Tooltip("hello"));
}
};
};
};
};
dp.setDayCellFactory(dayCellFactory);
DatePickerSkin datePickerSkin = new DatePickerSkin(dp);
Node popupContent = datePickerSkin.getPopupContent();
calendar_pane_1.getChildren().add(popupContent);
James_D,千恩万谢,完美的解决方案,一如既往..... – rainer
@Rainer你应该纪念的答案正确的,如果它回答您的问题 –