2015-03-28 4 views
0
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 дня до сегодняшнего дня.Календарь: добавляется день, когда нажимается кнопка [Java]

Что я хочу: Сегодня 28/03. Когда я нажимаю кнопку, она переходит к 29/03. Когда я снова нажимаю его, он переходит к 30/03 и так далее.

Что он делает сейчас: Сегодня 28/03. Когда я нажимаю кнопку, она переходит к 29/03. Когда я снова нажимаю на него, он остается в 29/03.

Надеюсь, это было достаточно ясно, это может показаться запутанным. Имейте в виду, что я все еще новичок в программировании на Java.

ответ

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); 
+0

я получаю ошибку на «Дата MyDate = format.parse (sourceDate); " Код: Необработанный тип исключения ParseException. Любое решение? – GeeSplit

+0

оператор объемного звучания с блоком 'try/catch'.' Netbeans' обычно предполагает, что автоматически .. –

+0

Хорошо, это исправлено. После этого отредактируйте ярлык следующим образом: «dag.setText (format.format (myDate))»; ? – GeeSplit

Смежные вопросы