是否有可用于 JXMonthView 可遍历按钮的侦听器?



使用 JXMonthView,可以将其设置为"可遍历",这意味着左箭头和右箭头出现在标题中的月份名称旁边。它们允许用户选择要查看的其他月份,从而有效地遍历日历年。

我想在这些箭头上放置一个事件侦听器,以便每次单击它们时,都会刷新标记的日期。目前,仅当用户单击 JXMonthView 中的日期时,才会发生这种情况,这会更改当前选择,从而触发刷新。有谁知道如何访问这些单独的遍历按钮并向它们添加侦听器?

您可以收听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");
        }
    }
});

最新更新