Re: JSpinner and date / time
"Kova" <kova1337@REMOVEgmail.com> wrote in message news:e362rh$p53$1@ss408.t-com.hr...
Hello.
After strugeling through APIs and official tutorials I finally though I understand the thing, but
nooooo... I'm trying to make my spinner spin from 00:00 to 59:59 (mm:ss) with seconds increasing
by 1. Can anybody tell me why stuff below dosen't work? I've run out of patience for testing and
reading over and over. Thank you.
------------------------------------------
import java.util.*;
import javax.swing.*;
public class TFrame extends JFrame {
public TFrame() {
super("TEST");
setDefaultCloseOperation(EXIT_ON_CLOSE);
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MINUTE, 0);
Date startDate = calendar.getTime();
calendar.add(Calendar.MINUTE, 60);
Date maxDate = calendar.getTime();
JSpinner spinner = new JSpinner(new SpinnerDateModel(startDate,
startDate, maxDate, Calendar.SECOND));
spinner.setEditor(new JSpinner.DateEditor(spinner, "mm:ss"));
add(spinner);
setBounds(0,0,200,100);
setVisible(true);
}
public static void main(String[] args) {
new TFrame();
}
} // end of class
------------------------------------------
...dosen't work, spiner is always at 00:00. :(
The SpinnerDateModel changed after about 1.4.0
it now has a mind of it's own
change to null start/end arguments, and the +/- buttons work
new SpinnerDateModel(startDate,null, null, Calendar.SECOND)
it will now go from 00:00 to 59:59 then with a +, it will roll-over to 00:00
but the next problem is that Calendar.SECOND will be ignored as the field to +/-
it will default to the left-most displayed field - year, day, minute, whatever
place your cursor anywhere after the : and the Calendar.SECOND field will +/-
a bit more info here
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6321570