Ausführliche Antwort:
Die JFormattedTextField-Klasse bietet eine leistungsstarke Möglichkeit, Benutzereingaben zu validieren und auf bestimmte Formate zu beschränken. Es bietet mehrere integrierte Formate, einschließlich numerischer Formate, was es zu einer idealen Wahl für die Annahme nur numerischer Werte in einem JTextField macht.
So können Sie es verwenden:
1. Erstellen Sie ein formatiertes Zahlenfeld:
import javax.swing.*; import java.text.NumberFormat; // Create a number format instance NumberFormat numberFormat = NumberFormat.getIntegerInstance(); // Create a formatted text field with the number format JFormattedTextField numberField = new JFormattedTextField(numberFormat);
2. Standardwert festlegen:
Wenn Sie das Feld mit einem Standardwert initialisieren möchten, verwenden Sie die setValue-Methode:
numberField.setValue(0);
3. Anpassung (optional):
Sie können das Erscheinungsbild oder Verhalten des Felds weiter anpassen, z. B. die Caret-Farbe festlegen und das Verhalten bei Fokusverlust aktivieren oder deaktivieren:
// Set focus lost behavior (commit or revert changes) numberField.setFocusLostBehavior(JFormattedTextField.COMMIT_OR_REVERT);
4. Zur GUI hinzufügen:
Fügen Sie das formatierte Textfeld zu Ihrer grafischen Benutzeroberfläche (GUI) hinzu.
Visuelles Feedback (optional):
JFormattedTextField bietet visuelles Feedback, um anzuzeigen, ob die Eingabe gültig ist. Standardmäßig wird der Hintergrund bei einem ungültigen Wert rot. Sie können dieses Verhalten bei Bedarf anpassen.
Zusätzliche Hinweise:
Das obige ist der detaillierte Inhalt vonWie kann ich ein JTextField so einschränken, dass es nur numerische Werte akzeptiert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!