2012-04-27 119 views
1

如何为JSpinner指定步骤? (例如10分钟,而不是1)设置JSpinner中DateEditor的步骤

有一个模型,其允许数字

SpinnerNumberModel(value, min, max, step); 

但如何设置为日期选择步长大小?

此代码

JSpinner timeSpinner = new JSpinner(new SpinnerDateModel()); 
DateEditor timeEditor = new DateEditor(timeSpinner, "HH:mm:ss"); 
timeSpinner.setEditor(timeEditor); 
timeSpinner.setValue(new Date()); // will only show the current time 

(从这个答案Is there any good and free Date AND Time Picker available for Java Swing?

只允许修改时间,但步骤是始终为1小时,1分钟或1秒钟,视,如果 “HH”,“ HH:mm“或”HH:mm:ss“。


是否有任何简单的方法来分钟,最大和步骤?

感谢

+0

以及'Date'可以很容易地使用'getTime()'转换为'long',从那里你可以添加你以毫秒为单位的时间增量登录,并在打印时将它转换回'Date' .. – Asif 2012-04-27 18:47:45

回答

1

使用DateEditor.getModel()得到它提供setStartsetEndsetCalendarFieldSpinnerDateModel

+1

“calendarField属性的值必须是在日历中指定字段的java.util.Calendar常量之一”,则无法分配10分钟的步骤,因为TEN_MINUTES不是日历中的常量 – 2012-04-27 20:27:28