2013-11-23 2 views
1

저는 Java (및 프로그래밍 전반)에서 매우 익숙합니다. 나는 JTextField를 통해 사용자로부터 double 값을 받고 배열에 꽤 많은 double 값을 곱해야하는 프로그램에서 작업하고 있으며 결과를 JTextArea에 표시하고 있습니다. 당신이 말할 수있는 일종의 계산기.JTextField를 통해 사용자 입력에 double 값의 배열을 곱하십시오.

지금은 배열의 마지막 값 (0.50)에 곱한 입력 결과와 내 루프, 배열 또는 누락 된 항목이 있는지 확인합니다. 무엇을 알아낼 수 없습니까?

double[] percRM = {0.65, 0.75, 0.85, 0.70, 0.80, 0.90, 0.30, 0.40, 0.50};     
double dDouble; 
double pFinal; 

if(ae.getSource() == pressbutton){ 
     pDouble = Double.parseDouble(presstext.getText()); 
     for (int j=0;j<percRM.length;j++){ 
      pFinal = percRM[j] * pDouble; 
     } 
      resulttext.setText("The Sum is:" + "\n" + pFinal+ "\t"); 
     } 

또한 꽤 많은 버튼이있는 JFrame이 있습니다. 제 전체 코드를 보여 주길 원한다면 알려주세요.

그리고 여기 메신저, 내가 옆에 인쇄 된 각각의 값에 텍스트를 추가하는 방법을 궁금해하면서, 사용자 입력이 100 말할 수

는, 결과 (예)입니다 :

The sum is: 

Week1: 
Set1 = 65 
Set2 = 75 
Set3 = 85 
etc. 

어떤 도움을 주셔서 감사합니다, 감사합니다

답변

1

문제는 JTextArea에서 setText(...)을 호출하고 루프가 끝난 후 그렇게하는 것입니다. setText(..)은 JTextArea가 현재 보여주고있는 모든 것을 지우고 새로운 텍스트로 대체합니다 - 이제 당신이 원하는 것. append(...) 메소드는 새로운 텍스트를 추가합니다.

대신 append(...)을 호출하고 루프 내부에서 호출하십시오.

for (int i = 0; i < someLength; i++) { 
    double value = doSomeCalculation(): 
    myTextField.append("result: " + value + "\n"); 
} 
+0

+1 huh! 나를 때려. :) – Sage

+0

고마워, 나는 지금 그것을 체크 아웃 할 것이다. 내 편집을 참조하십시오. 관심이 있으시면 추가 질문이 있습니다. – user2900511

+0

@ user2900511 : 내 예제는 이미 두 번째 부분에 응답합니다. 보여줄 텍스트를 추가하십시오. –

관련 문제