什么是好的Java日期选择器Swing GUI小部件?

什么是优秀的Java Swing日期选择器组件? 到目前为止,我只是真的发现了这两个:

  • JCalendar – 这个很好,因为它使用底层的外观和感觉。
  • SwingX项目中的JXMonthView – 不如它使用自己的外观和感觉

与我在网页上看到的一些相比,这些看起来有点笨拙。 例如,同时看到多个月可能会很愉快。 有没有人知道其他任何好的小部件?

最近我发现并使用Microba DatePicker( http://microba.sourceforge.net/ )进行涉及Swing GUI的个人项目,实际上我真的非常喜欢这种控件的实现方式。 此外,许可证是BSD,因此您可以自定义控件并在需要时将其用于商业用途。

我经常迟到,但我见过的最好的是: JDatePicker

(令我感到惊讶的是:星期一开始一周 – 就像许多日历一样,顺便说一下星期日是Java中的第0天 – 但你可以编辑源代码并重新编译,以便从周一开始;-))

还有NachoCalendar 。

我已经尝试了大部分日期选择器。
我会建议LGoodDatePicker

https://github.com/LGoodDatePicker/LGoodDatePicker

公平披露:我是主要开发人员。

这是一个通用function列表(改编自Github):

  • 自动国际化。
  • 使用(新)标准Java 8时间包。 也称为“java.time”或“JSR-310”。
  • 自动validation日期。
  • 字体和颜色可以更改。
  • 可选的突出显示策略和否决策略。
  • 相对紧凑的源代码(3个核心类)。
  • 创建DatePicker只需要一行代码。
  • 包括演示程序和代码示例。
  • 好Javadocs。
  • 开源许可证。

屏幕截图如下:

LGoodDatePicker截图

jCalendar附带的jDateChooser是日期的最佳组件:以下是从日期选择器获取日期的方法:

 //dat is name given to datepicker component int day=dat.getJCalendar().getDayChooser().getDay(); int month=dat.getJCalendar().getMonthChooser().getMonth(); int year=dat.getJCalendar().getYearChooser().getYear(); String dateNow=year+"/"+month+"/"+day; System.out.println(dateNow); //*************************************************** //For setting date of date picker: dat.setDateFormatString("dd-MM-yyyy"); Calendar currentDate = Calendar.getInstance(); dat.setDate(currentDate.getTime()); 

您可以在此处获得现在的免费日期选择器和日历控件。