JSpinner专门用于时间

时间:2011-04-01 15:23:20

标签: java jspinner

我正在使用JSpinner输入时间;但是当我使用getValue方法时,我获得了1970年1月1日的时间,因为那是默认的日期开始。我怎样才能获得时间和时间?我对日期不感兴趣

注意:我已经使用了dateEditor。也许我的JSpinnerDateModel不合适?

1 个答案:

答案 0 :(得分:4)

你可以创建一个JSpinner实例并让它将日期格式化为时间,然后在最后提取时间:

    JSpinner jSpinner1 = new JSpinner();
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(new Date(0));
    Date earliestDate = calendar.getTime();
    calendar.add(Calendar.MINUTE, 1439); // number of minutes in a day - 1
    Date latestDate = calendar.getTime();
    SpinnerDateModel model = new SpinnerDateModel(earliestDate,
            earliestDate,
            latestDate,
            Calendar.MINUTE);
   jSpinner1.setModel(model);
   jSpinner1.setEditor(new JSpinner.DateEditor(jSpinner1, "hh:mm"));

   Date d = (Date)jSpinner1.getValue();
   Calendar c = Calendar.getInstance();
   c.setTime(d);
   c.get(Calendar.HOUR);
   c.get(Calendar.MINUTE);