有没有办法限制jSpinner的输入?

时间:2017-10-24 21:01:31

标签: java swing timepicker jspinner

如何使用jSpinner作为时间选择器来限制数字输入?

当我使用此代码时:

JSpinner.DateEditor editor = new JSpinner.DateEditor(spinner, "HH:mm");
DateFormatter formatter = (DateFormatter)editor.getTextField().getFormatter();
formatter.setAllowsInvalid(false); // this makes what you want
formatter.setOverwriteMode(true);

我从这里拿到了这个例子:Similar problem using jSpinner as time picker on StackOverflow

因此,当我在1111开始输入时,它会正常工作,直到我输入更多数字,然后它开始计算并给我“奇怪”输出,如:

12:51

当我在1111之后进入另一个1。 当我设置12h时间格式时,例如:

JSpinner.DateEditor editor = new JSpinner.DateEditor(spinner, "HH:mm a");

然后它工作正常,在第四位之后停止并且不允许任何其他输入。如何以24小时格式获得此行为?

0 个答案:

没有答案