Heim > Java > javaLernprogramm > Warum zeigt mein JFormattedTextField nach einer ungültigen Eingabe erneut gültige Eingaben an?

Warum zeigt mein JFormattedTextField nach einer ungültigen Eingabe erneut gültige Eingaben an?

Linda Hamilton
Freigeben: 2024-12-02 06:27:13
Original
797 Leute haben es durchsucht

Why Does My JFormattedTextField Re-display Valid Input After an Invalid Entry?

JFormattedTextField-Problem: Text erscheint nach ungültiger Eingabe erneut

In Ihrem Code verwenden Sie JFormattedTextField innerhalb eines SudokuTextBox um die Validierung zu erzwingen. Wenn Sie jedoch gültige und anschließend ungültige Werte eingeben, wird das Textfeld gelöscht, aber der vorherige gültige Wert wird beim Vorwärts-Tab wieder angezeigt.

Ursache und Lösung

Ihr Problem liegt in der Art und Weise, wie Sie das Textfeld nach einer ungültigen Eingabe leeren. Wenn er ungültig ist, setzen Sie den Text auf „null“ statt auf die leere Zeichenfolge. Dadurch behält das JFormattedTextField den letzten gültigen Wert als Standardwert bei, der wieder angezeigt wird, wenn sich der Fokus ändert.

Um dieses Problem zu beheben, setzen Sie den Text nach einem ungültigen Eintrag einfach auf eine leere Zeichenfolge:

public void keyReleased(KeyEvent e) {
  //...
  // Corrected line:
  if(sudoku.isValid(row, col, value)) {
   sudoku.set(row, col, value);
  }
  else {
   sudoku.set(row, col, 0);
   tb.setText(""); // Set to empty string, not null
  }
  //...
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum zeigt mein JFormattedTextField nach einer ungültigen Eingabe erneut gültige Eingaben an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage