JFormattedTextField 문제: 잘못된 입력 후 텍스트가 다시 나타남
코드에서 JFormattedTextField를 SudokuTextBox를 통해 유효성 검사를 시행합니다. 하지만 유효한 값을 입력한 후 잘못된 값을 입력하면 텍스트 상자가 지워지지만 앞으로 탭하면 이전에 유효한 값이 다시 나타납니다.
원인 및 해결 방법
문제 잘못된 항목을 입력한 후 텍스트 상자를 지우는 방식에 있습니다. 유효하지 않은 경우 빈 문자열 대신 텍스트를 "null"로 설정합니다. 이로 인해 JFormattedTextField는 마지막으로 유효한 값을 기본값으로 유지하고 포커스가 변경되면 다시 나타납니다.
이 문제를 해결하려면 잘못된 항목 뒤에 텍스트를 빈 문자열로 설정하면 됩니다.
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 } //... }
위 내용은 JFormattedTextField가 잘못된 항목 이후에 유효한 입력을 다시 표시하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!