我需要 JFormattedTextField 来格式化日期(“dd.MM.yy”)。代码:
SimpleDateFormat format= new SimpleDateFormat("dd.MM.yy");
DateFormatter formatter = new DateFormatter(format);
format.setLenient(false);
formatter.setAllowsInvalid(false);
formatter.setOverwriteMode(true);
JForemattedTextField inputText = new JFormattedTextField(formatter);
inputText.setValue(new Date());
问题是:例如,如果日期是“11/06/12”,如果我尝试在月份输入 12,我不能这样做,因为当我输入 1 时,它会将月份理解为 16 并且不给我输入下一个数字。我需要当我在月份位置键入例如 12 时,JFormattedTextField 将仅在我键入第二个数字后检查月份的正确性,如果不正确,月份将返回到以前的值。我该如何解决这个问题?