是否可以在JCalendar JDateChooser字段上检测日期更改?

我想在JDateChooser字段中检测日期何时更改,以便我可以更新另一个字段。

这可能吗? 如果是这样,我应该在哪里开始? 我已经查看了文档,遗憾的是没有添加类似ActionListener或StateChangeListener的方法(我的第一个想法)。

com.toedter.calendar.JCalendarJComponentinheritance一个listenerList,它实现了java.beans.PropertyChangeListener 。 我会添加一个听众,看看会发生什么。

编辑:我认为你可以像JCalendar一样使用addPropertyChangeListener()

 JDateChooser chooser = new JDateChooser(); chooser.getDateEditor().addPropertyChangeListener( new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent e) { if ("date".equals(e.getPropertyName())) { System.out.println(e.getPropertyName() + ": " + (Date) e.getNewValue()); } } }); this.add(chooser); 

我没试过,但addDateListener(DateListener listener)看起来合适。