我正在使用ZK CE-9.0.0和zk-calendar-2.1.5 source code。
当前所有日期都在日历中启用。
我需要从所有视图(日/周/月)中禁用过去的几天(灰色且没有点击事件),但无法找到任何直接可用的此类功能。
有人可以帮我吗?
谢谢,
RAS
我不认为有这样的功能。
一种解决方法是禁用过去几天的事件点击并更改颜色。
1。在您的控制器中捕获点击:
@Wire("#course-calendar")
private Calendars courseCalendar;
@Listen("onEventCreate = #course-calendar")
public void clickCreateEvent(CalendarsEvent event) {
if (event.getBeginDate().before(new Date())) {
// disable click if event is before now
} else {
//do something on event create
}
}
@Listen("onEventEdit = #course-calendar")
public void clickEditEvent(CalendarsEvent event) {
if (event.getBeginDate().before(new Date())) {
// disable click if event is before now
} else {
// do something on event edit
}
}
for (MyEvent me : myManager.getEvents()) {
final SimpleCalendarEvent simpleCalendarEvent = new SimpleCalendarEvent();
// set grey color event before now
if (me.startDate < new Date()) {
simpleCalendarEvent.setContentColor("#aaaaaa");
simpleCalendarEvent.setHeaderColor("#aaaaaa");
simpleCalendarEvent.setLocked(true);
} else {
simpleCalendarEvent.setContentColor("#4363d8");
simpleCalendarEvent.setHeaderColor("#4363d8");
simpleCalendarEvent.setLocked(false);
}
simpleCalendarEvent.setContent(me.getContent());
simpleCalendarEvent.setBeginDate(me.startDate);
simpleCalendarEvent.setEndDate(me.endDate);
simpleCalendarEvent.setTitle(me.getTitle());
getSimpleCalendarModel().add(simpleCalendarEvent);
}