Ich habe ein Textfeld, und ich möchte die Eingabe des Textfelds validieren, während ich tippe. Genau wie das Google Register Formular. Ich habe versucht, Thread zu verwenden. Aber es sieht nach einem Durcheinander aus.Validiere JTextField während der Eingabe in
Antwort
Ich habe ein Textfeld, und ich möchte die Eingabe des Textfelds validieren, während ich tippe. Genau wie das Google Register Formular. Ich habe versucht, Thread zu verwenden. Aber es sieht nach einem Durcheinander aus.
Sie müssen keinen Thread verwenden, um die Eingabe während der Eingabe zu überprüfen. Sie können das DocumentListener verwenden, das für diesen Zweck implementiert wird.
Es kann die Änderungen im Textfeld hören, während Sie das Textfeld eingeben, d. H. Zeichen eingeben/Zeichen entfernen.
Danke. Ich finde den Document Listener sehr nützlich. Ich verstehe die Methode insertUpdate() und removeUpdate. Aber ich weiß nicht, wann ich die Methode "ChangedUpdate" verwenden soll. Kannst du mir ein Beispiel zeigen? – John
@John verwenden Sie einfach das insertUpdate und removeUpdate. ChangedUpdate kann leer bleiben. Wenn meine Lösung Ihr Problem löst, können Sie meine Lösung akzeptieren. – user3437460
Ja. Ich habe es aber verstanden. Das geänderte Update tritt nur auf, wenn Sie die Größe, Schriftart, ... von Eingaben ändern. Wie auch immer, danke nochmal. – John
Sie können KeyListener für dieses TextField verwenden.
Dies ist Beispiel:
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.*;
public class JtextField {
public static void main(String[] args) {
// TODO Auto-generated method stub
JFrame f= new JFrame("TextField Example");
JTextField t1;
t1=new JTextField("Welcome, Give me a world");
t1.setBounds(50,100, 200,30);
f.add(t1);
f.setSize(400,400);
f.setLayout(null);
f.setVisible(true);
t1.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
System.out.println("keyTyped");
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
System.out.println("keyReleased");
}
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
System.out.println("keyPressed");
}
});
}
}
Verwenden Sie keinen KeyListener. Swing hat neuere und bessere APIs, wie die Antwort auf die Verwendung eines 'DocumentListener' vorgeschlagen hat. – camickr
- 1. Wie validiere ich ein JTextField?
- 2. Wie validiere ich ein JTextField?
- 3. Wie validiere ich ein JTextField in Eclipse?
- 4. Begrenzung der Länge der Eingabe in JTextField funktioniert nicht
- 5. Wie leere JTextField nach Eingabe
- 6. validiere Eingabe Text mit angularJS
- 7. Validieren der numerischen Eingabe während der Eingabe
- 8. Wie validiere Array-Eingabe in Laravel?
- 9. Wie validiere ich ein jtextfield zu einem bestimmten Format?
- 10. Wie man Etikettentext auf JTextField-Eingabe setzt
- 11. Parsing Double/Int von Jtextfield Eingabe
- 12. Java JTextField Konvertieren in Groß-/Kleinschreibung während des Schreibens
- 13. Swing - Erstellen von GridLayout mit JTextfield Eingabe
- 14. Eingabe während der Eingabe überprüfen (nur Nummer)
- 15. Swingworker - Wie ein JTextField während eines Action
- 16. Update Textfeld während der Eingabe
- 17. Konvertieren Eingabesprache während der Eingabe
- 18. JavaScript Textmanipulation während der Eingabe?
- 19. Haskell - Eingabe während der Laufzeit
- 20. Zeige Text während der Eingabe
- 21. yii validiere ein Eingabe-Array von Telefonnummern
- 22. Display-Ausnahme in JTextField
- 23. Wie validiere Array-Eingabe mit jquery-validate
- 24. Wie validiere ich numerische Eingabe C++
- 25. Oracle DB, validiere XML während des Einfügens
- 26. Datum Validierung während Eingabe in Eingabefeld in Jquery
- 27. Wie validiere ich HTML während der Pull-Anfrage?
- 28. JTextField
- 29. Wie wähle ich Text in JTextField während Tabbing
- 30. JTextField Datenvalidierung
Schauen Sie [hier] (https://stackoverflow.com/questions/23134329/jtextfields-real-time-formatting-of-user-input) und man könnte finde etwas Nützliches. –
@VasilisG., Nein. Verwenden Sie keinen KeyListener. Verwenden Sie den DocumentListener oder ein JFormattedTextField. – camickr