java - 如何使用 JCalendar 选择数组中的元素?

标签 java arrays swing calendar jcalendar

我有一个 3D 数组,其中包含 38 年、12 个月和每个月 31 个条目(无论该月有多少天)。就像这样:array[38][12][31]。我还有一个 JCalendar,现在除了看起来很漂亮之外什么也不做,并且 JCalendar 下面有一个按钮。我该如何做到这一点,以便我可以在日历中选择一个日期,然后按下按钮,它会返回与该日期对应的数组元素?

类似于

if(buttonPressed){
    year = chosenYear - 1975;
    month = chosenMonth;
    day = chosenDay;

    System.out.print(array[year][month][day]);
}

谢谢大家。

最佳答案

您可以在PropertyChangeListener中获取选定的Date,如图here 。获得日期后,您可以从日历获取年、月和日:

Calendar c = Calendar.getInstance();
c.setTime(date);
int y = c.get(Calendar.YEAR);
int m = c.get(Calendar.MONTH);
int d = c.get(Calendar.DAY_OF_MONTH);

Calendar.MONTH 已经从零开始,但 Calendar.DAY_OF_MONTH 不是;并且您需要将年份调整为基准。

关于java - 如何使用 JCalendar 选择数组中的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16645127/

相关文章:

java - 如何使用 dropwizard 按 ID 检索对象?

Java : Compare all values of nested hashmap

c - 将结构添加到 C 中的 char 数组

c - C语言算法——谁是获胜队

java - 使用Swing和Java, "Swing-Shell"线程做了什么

java - Hibernate中Environment.DEFAULT_SCHEMA和数据库的区别

java - Spring-ActiveMQ : DefaultMessageListenerContainer not getting destroyed

java - 数组列表插入方法

java - 在两个 JPanel 上设置组件

java - 向 JTable 行添加颜色