Добавление actionListener в jCalendar
Как добавить actionListener в компонент jDayChooser существующего jCalendar, размещенного с использованием netbeans?
Я хотел бы вызвать событие только тогда, когда нажаты кнопки дня. так как propertyChange в jCalendar прослушивает даже jMonthChooser и jYearChooser
PS с помощью jCalendar от toedter
2 ответа
Решение
Кроме того, вы можете слушать конкретные propertyName
, "day"
,
JDayChooser jdc = new JDayChooser();
jdc.addPropertyChangeListener("day", new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent e) {
System.out.println(e.getPropertyName()+ ": " + e.getNewValue());
}
});
Приложение: Как мне заставить его работать на JCalendar
?
Точно так же propertyName
, "calendar"
представляет Calendar
из которого ты можешь get()
DAY_OF_MONTH
,
JCalendar jc = new JCalendar();
jc.addPropertyChangeListener("calendar", new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent e) {
final Calendar c = (Calendar) e.getNewValue();
System.out.println(c.get(Calendar.DAY_OF_MONTH));
}
});
В случае, если кто-то пропустит чтение комментариев. Вот пример рабочего кода.
JCalendar jCalendar = new JCalendar();
jCalendar.getDayChooser().addPropertyChangeListener("day", new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent e) {
System.out.println(e.getPropertyName()+ ": " + e.getNewValue());
}
});