Da moderne Programmiersprachen wie z.B. Java es den Programmierer einfach machen, Inputs vom Benutzer ,,on the fly`` zu überprüfen, ob es sich bei der Eingabe der Daten, um eine gültige Eingabe handelt, haben wir natürlich auch nicht darauf verzichtet, eine Eingabekontrolle mit einzubauen.
Auch hier sind Design-Fragen mit eingeflossen, die die Erweiterung unserer Formatter-Factory unkompliziert und vor allem wiederverwendbar macht.
Im Client-Package existert die Datei TextFieldConfigs.java, in der definiert ist, was in einzelnen Typen von Textfeldern eingetragen werden darf.
.
.
.
public static final DefaultFormatterFactory date =
new DefaultFormatterFactory(new DateFormatter(
new SimpleDateFormat("dd.MM.yyyy")));
public static final DefaultFormatterFactory konto =
new DefaultFormatterFactory(new NumberFormatter(
new DecimalFormat("#,###")));
public static final DefaultFormatterFactory amount =
new DefaultFormatterFactory(new NumberFormatter(
new DecimalFormat("#,###.00")));
public static final DefaultFormatterFactory plz =
new DefaultFormatterFactory(
new NumberFormatter(new DecimalFormat("00000")));
public static final DefaultFormatterFactory tel =
new DefaultFormatterFactory(new NumberFormatter(
new DecimalFormat("###### / #########")));
public static final DefaultFormatterFactory year =
new DefaultFormatterFactory(
new NumberFormatter(new DecimalFormat("2000")));
.
.
.
Hier sind 6 verschiedene Formate vordefiniert, die jeder Zeit an die Bedürfnisse des Benutzers angepasst werden können. Hinzufügen neuer Formate ist genauso unproblematisch und einfach, wenn neue Masken andere Formate benötigen.