Hallo,
Ich hab ein KeyListener (KeyTyped) für ein Textfield erstellt, der ja logischerweiße ein KeyEvent empfängt.
Jetzt hab ich allerdings noch andere Textfelder, die genau die Selbe Methode benötigen, weshalb ich eine Methode für alle diese Textfelder schreiben möchte.
Die Frage ist nur: Was sollen diese Methoden empfangen?
Sie müssen ja theoretisch das betreffende Textfield und den evt empfangen oder?
Geht das überhaupt?
Ich könnte den KeyListener ja auch einfach mehreren Textfelder zuordnen, aber dann würde sich ja immer nur bei der jTextErsteinzahlungCheck was verändern..
Versteht ihr mein Problem?
Hoffe ihr könnt mir helfen.
Hier der Listener:
Ich hab ein KeyListener (KeyTyped) für ein Textfield erstellt, der ja logischerweiße ein KeyEvent empfängt.
Jetzt hab ich allerdings noch andere Textfelder, die genau die Selbe Methode benötigen, weshalb ich eine Methode für alle diese Textfelder schreiben möchte.
Die Frage ist nur: Was sollen diese Methoden empfangen?
Sie müssen ja theoretisch das betreffende Textfield und den evt empfangen oder?
Geht das überhaupt?
Ich könnte den KeyListener ja auch einfach mehreren Textfelder zuordnen, aber dann würde sich ja immer nur bei der jTextErsteinzahlungCheck was verändern..
Versteht ihr mein Problem?
Hoffe ihr könnt mir helfen.
Hier der Listener:
Java:
private void ErstEinzahlungCheck(java.awt.event.KeyEvent evt) {
this.jTextErsteinzahlung.setBackground(Color.WHITE);
char taste = evt.getKeyChar();
boolean tasteOK = true;
if (this.jTextErsteinzahlung.getText().contains(",")) {
System.out.println(i);
if (i > 0) {
System.out.println("ja ist es");
if (taste < '0' || taste > '9') {
tasteOK = false;
if (taste == ',') {
if (this.jTextErsteinzahlung.getText().contains(",")) {
tasteOK = false;
}
}
}
i--;
} else {
this.jTextErsteinzahlung.setText(this.jTextErsteinzahlung.getText().replace(",", ""));
this.jTextErsteinzahlung.setToolTipText("Nur zwei Stellen nach dem Komma erlaubt!");
i = 2;
}
} else {
i = 2;//falls vertippt, wird die Nachkomma-Begrenzung zurückgesetzt, wenn man das Komma nochmal löscht
if (taste < '0' || taste > '9') {
tasteOK = false;
if (taste == ',') {
if (this.jTextErsteinzahlung.getText().contains(",")) {
tasteOK = false;
System.out.println("nichtOK");
} else {
System.out.println("is ok");
tasteOK = true;
}
}
}
}
if (!tasteOK) {
System.out.println("verbieten");
evt.consume();
}
}
Zuletzt bearbeitet von einem Moderator: