2010-12-14 2 views
1

간단한 질문입니다. JtextField가 숫자 값만 허용하는지 어떻게 확인합니까? 사용자가 다른 것을 입력하면 오류 메시지가 표시됩니다. 감사합니다.Java JTextfields

+3

도 참조 http://stackoverflow.com/questions/1313390/is-there-any-way-to-accept-only-numeric-values-in-a-jtextfield/1313448#1313448 - 필요 없습니다 불쾌한 오류 메시지. –

+0

시험해보기 : http://stackoverflow.com/questions/1313390/is-there-any-way-to-accept-only-numeric-values-in-a-jtextfield – Igor

답변

6

JFormattedTextField을 사용할 수 있습니다. NumberFormatter을 사용하여 구성하고 숫자 만 허용합니다.

JFormattedTextField에는 잘못된 입력을 처리하는 방법을 결정할 수있는 여러 구성 옵션이 있습니다. 설명서를 보는 것이 좋습니다.

1

키 이벤트 수신기를 추가하고 입력 한 각 문자를 확인하거나 설치할 수있는 문서 포맷터 (NumberFormatter)가 있습니다.이 형식은 숫자 이외의 입력을 허용하지 않습니다.

0

키 수신기를 텍스트 필드와 연결하고 방금 삽입 한 값을 확인하십시오. 삽입 된 값이 정수가 아니면 프롬프트 오류입니다.

+0

나는이 생각을 좋아하지만 어떻게 할 것인가? 입력 된 값을 확인 하시겠습니까? 예제 코드가 있을까요? 덕분에 – Maxi90

-1

이 트릭을 사용합니다.

private void myTextFieldKeyReleased(java.awt.event.KeyEvent evt) { 
try{ 
int i = Integer.parseInt(myTextField.getText()); 
} 
catch(Exception ex){ 
//Show error message here with 
JOptionPane.showMessageDialog(null, "Invalid Input...!"); 
myTexTField.setText(""); 
} 
} 
+0

keyListeners가 너무 낮은 수준이므로 이러한 작업을 수행 할 수 없습니다. 충분히 안전하지 않습니다. – kleopatra

관련 문제