如何将 actionListener 添加到使用 netbeans 放置的现有 jCalendar 的 jDayChooser 组件?
我只想在单击日期按钮时触发事件。因为 jCalendar 中的 propertyChange 甚至会监听 jMonthChooser 和 jYearChooser
PS 使用 toedter 的 jCalendar
如何将 actionListener 添加到使用 netbeans 放置的现有 jCalendar 的 jDayChooser 组件?
我只想在单击日期按钮时触发事件。因为 jCalendar 中的 propertyChange 甚至会监听 jMonthChooser 和 jYearChooser
PS 使用 toedter 的 jCalendar
或者,您可以收听特定的propertyName
, "day"
。
JDayChooser jdc = new JDayChooser();
jdc.addPropertyChangeListener("day", new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent e) {
System.out.println(e.getPropertyName()+ ": " + e.getNewValue());
}
});
附录:我如何让它在 a 上工作 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());
}
});