Я думаю, что вам лучше всего подкласс AbstractFormatter
и использовать регулярное выражение для электронной почты, например:
public class EmailFormatter extends AbstractFormatter {
@Override public Object stringToValue(String string) throws ParseException {
Matcher matcher = regexp.matcher(string);
if (matcher.matches())
return string;
throw new ParseException("Not an email", 0);
}
@Override public String valueToString(Object value) {
return value;
}
final private Pattern regexp = Pattern.compile("EMAIL REGEXP TO FIND BY YOURSELF");
}
...
JFormattedTextField email = new JFormattedTextField(new EmailFormatter());
Обратите внимание, что я позволю вам найти правильное регулярное выражение для электронной почты;Вы можете простым способом или, если хотите, выбрать один RFC, который описывает регулярное выражение на одну страницу, которое охватывает электронные письма в соответствии с реальными спецификациями, но, возможно, вы можете упростить свои требования; -)