2014-03-30 2 views
0
그래서
else if (cmd.equals("five")) 
    { 
     infixInput.setText("5"); 
    } 
    else if (cmd.equals("six")) 
    { 
     infixInput.setText("6"); 
    } 

나는 당신이 CALC 버튼을 누르면 숫자가 중위 텍스트 필드에 표시되는 위치가 설정되어 있지만 예를 들어 5를 누른 다음 6을 입력하면, 6 것 다만 교체 5. 버튼을방법의 JTextField에서 다음 토큰으로 이동합니다

답변

6

을 누를 때 나는 공간을 통해 이동을 어떻게 알 수 있습니까 당신은에 infixInput.setText("6");을 변경 시도 할 수 :

String text = infixInput.getText() + "6"; 
infixInput.setText(text); 

이것은 "6"의 끝에 추가합니다 텍스트가 이미 텍스트 필드에 표시됩니다. 텍스트 필드를 가정

+0

나에게 맞는 것 같다. –

2

방금과 같은 코드를 사용하여 텍스트를 추가 할 수 있습니다 편집 할 수 없습니다 다음

infixInput.replaceSelection("6"); 

이 코드가 추가 될, caret의 위치에있는 문서에 텍스트를 (삽입합니다 종료).

텍스트 필드에 DocumentListener를 사용하는 경우 삽입 된 텍스트에 대해서만 이벤트가 발생하기 때문에이 방법이 더 정확합니다. 텍스트는 제거되고 추가되지 않습니다.

관련 문제