使用JXMonthView,可以将其设置为“Traversable”,这意味着标题中月份名称旁边会出现左箭头和右箭头。它们允许用户选择不同的月份来查看,有效地遍历日历年。
我想在这些箭头上放置一个事件监听器,这样每次点击它们时,标记的日期都会刷新。目前,这仅在用户单击JXMonthView中的日期时发生,该日期会更改当前选择,从而触发刷新。有谁知道如何访问这些单独的遍历按钮并为它们添加一个监听器?
答案 0 :(得分:2)
您可以收听firstDisplayedDay
属性更改。
根据源代码,BasicMonthViewUI.nextMonth()
或previousMonth()
会调用monthView.setFirstDisplayedDay
,firePropertyChange("firstDisplayedDay", oldDate, getFirstDisplayedDay());
会调用monthView.addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent e) {
if ("firstDisplayedDay".equals(e.getPropertyName())) {
System.out.println("updated");
}
}
});
。
例如:
{{1}}