Вопрос о NumberFormatter - PullRequest
       34

Вопрос о NumberFormatter

2 голосов
/ 27 мая 2011

Вот код, я надеюсь, что это добавит ограничение, что для текстового поля допустим только целочисленный ввод:

JFormattedTextField ftf =  new JFormattedTextField ();

NumberFormat format = NumberFormat.getNumberInstance();
format.setParseIntegerOnly(true);
ftf.setFormatterFactory(new DefaultFormatterFactory(new NumberFormatter(format), new NumberFormatter(format), new NumberFormatter(format)));

Но что меня удивило, так это то, что при вводе 100aaa этоДействительный, 100.111, это также верно.Как я могу сделать это, чтобы ограничить, что только целое число является допустимым вводом?

Ответы [ 2 ]

3 голосов
/ 27 мая 2011

проверьте этот код, там разрешен только ввод цифр (код из Old.Sun.Com.Tutorial и немного исправлено в правилах mvc)

3 голосов
/ 27 мая 2011

Вам необходимо setAllowsInvalid(false) для объектов NumberFormatter.

...