当前位置: 首页 > 面试题库 >

如何在JCalendar中仅显示今天之后的日期

屈博
2023-03-14
问题内容

我试图限制用户只选择今天之后的日期,或者选择另一个以后的日期,Date 我在JCalendar
API
上看到了
一些可以帮助我但我什么都没找到的东西..我该怎么办?


问题答案:

我认为组件上没有直接的方法可以做到这一点。我知道的一种方法是使用setSelectableDateRange(Date from,Date to)-当您将起始日期设置为当前日期时,所有前一天的单元格,年/月下拉列表都将被禁用。

例:

    JCalendar calendar = new JCalendar();
    calendar.setSelectableDateRange(new Date(),new SimpleDateFormat("MM-DD-YYYY").parse("05-05-2015"));

    PropertyChangeListener calendarChangeListener  = new PropertyChangeListener() {
        @Override
        public void propertyChange(PropertyChangeEvent evt) {
            Date selectedDate = ((JCalendar)evt.getSource()).getDate();
        }
    };
    calendar.addPropertyChangeListener("calendar",calendarChangeListener);

这将禁止选择当前日期之前和2015年5月5日之后的任何日期

请注意,此API未在其Javadoc中记录。但这仍然是一个公众期望的工作。

编辑, 因为您想知道如何JDateChooser在类似的上下文中使用

    JDateChooser chooser = new JDateChooser();
    chooser.getJCalendar().setSelectableDateRange(new Date(),new SimpleDateFormat("MM-DD-YYYY").parse("05-05-2015"));
    chooser.getJCalendar().addPropertyChangeListener("calendar",...);


 类似资料:
  • 问题内容: 如何在Sparksql中获得一天,与mysql中相同。 问题答案: 算术函数使您可以对包含日期的列执行算术运算。 例如,您可以计算两个日期之间的差额,为日期添加天数或从日期中减去天数。内置的日期计算功能包括,, ,,, ,和。 我们需要的是 date_sub(时间戳记开始日期,整数天),用途:从TIMESTAMP值中减去指定的天数。第一个参数可以是字符串,如果它使用可识别的格式(如TI

  • 问题内容: 换句话说,我想要提供Joda-Time的功能: 但没有Joda-Time,只有java.util.Date。 不推荐使用.setHours()等方法。有没有更正确的方法? 问题答案: 由于不推荐使用这些方法,因此您可以使用: 如果最终需要一个对象,只需调用

  • 问题内容: 如何让今天的日期YYYYMMDD在火鸟,我一看下面的,但不能想出该怎么写。 问题答案: 我认为您可以:

  • 获取今天的日期(年、月、日) 用法 Your browser does not support the video tag. 案例:小闹钟 功能:2019年12月25日,播放圣诞快乐歌

  • 问题内容: 我有一个像这样的Oracle SELECT查询: 我的意思是,我想选择字段“ date_enter”今天所在的所有位置。我已经尝试过类似的操作,但是没有用。 忠告: 我不能使用TO_CHAR,因为它变得太慢。 问题答案: 假设是一个字段: 默认情况下,该功能会删除时间部分,因此您可以在今天早晨午夜12点前使用该功能。 如果您特别想坚持使用,而不是,则可以执行以下操作: 是包容性的,因此

  • 我有搜索框的表格。我想在这个搜索框中输入今天的日期,并点击提交按钮后,我从数据库中获得10天的记录。我在table(table=issueDevices的名称)中有以下列。Device_ID、Employee_id、Employee_Name、Employee_Ext、Issue_Date 当我像下面这样编写查询时,pst=con.prepareStatement(“select*from iss