Добавление 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());
   }
});
Другие вопросы по тегам