日历:添加按钮单击的日期时间[Java]

时间:2015-03-28 16:25:54

标签: java calendar

class calendarNDListener implements  ActionListener{
    public void actionPerformed(ActionEvent e){
            calendar = new GregorianCalendar();
            format = new SimpleDateFormat("dd/MM");
            date = new Date();

            calendar.setTime(date);
            calendar.add(calendar.DATE, 1);
            date = calendar.getTime();

            dag.setText(format.format(date));
        }

当我点击具有'calendarNDListener'ActionListener的按钮时,它会在'dag'标签上添加一天。但这只做了一次。如果我想再提前一天,它什么都不做。 我想要的是,当你点击按钮时,它会在标签日期添加一天。但是,如果我再次单击它,它会在上一个日期(已添加一天的日期)中添加一天。它现在提前2天。

我想要的: 今天是28/03。当我点击按钮时,它会转到29/03。当我再次点击它时,它会转到30/03,依此类推。

现在做什么: 今天是28/03。当我点击按钮时,它会转到29/03。当我再次点击它时,它将保持在29/03。

我希望这很清楚,听起来可能会令人困惑。 请记住,我仍然是Java编程的初学者。

1 个答案:

答案 0 :(得分:0)

之前问过这个问题! 做你的研究,而不只是发一个问题! 这是你的答案:

public class DateUtil
{
    public static Date addDays(Date date, int days)
    {
        Calendar cal = Calendar.getInstance();
        cal.setTime(date);
        cal.add(Calendar.DATE, days); //minus number would decrement the days
        return cal.getTime();
    }
}

要为每次点击添加一天,请按以下方式调用:

String sourceDate = "2012-02-29";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date myDate = format.parse(sourceDate);
myDate = DateUtil.addDays(myDate, 1);