2016-11-10 1 views
0

18보다 큰 값을 입력하면 JLabel에 하나를 추가하는 프로그램을 만들지 만, 버튼을 클릭 할 때마다 프로그램은 추가 할 때마다 1로 다시 설정됩니다. 당신은 얻을 필요가JButton이 활성화 될 때마다 재설정하지 않고 JLabel에 값을 저장하는 방법은 무엇입니까?

int age = Integer.parseInt(jTextField1.getText()); // gets the value from the button click 

if(age >= 18){ // determines if it is greater then 18 
    int totalOne = 0; 
    totalOne = totalOne + 1; 
    String totalAgeOne = Integer.toString(totalOne); 
    jLabel3.setText(totalAgeOne); // sets the jlabel to One 
}else{ 
    int totalTwo = 0; 
    totalTwo = totalTwo + 1; 
    String totalAgeTwo = Integer.toString(totalTwo); 
    jLabel5.setText(totalAgeTwo);  
} 
+1

도움이 더 필요하면 [MCVE] 또는 [Short, Self Contained, Correct Example] (http://www.sscce.org/)를 게시하십시오. –

+1

'int totalOne = 0;처럼 보일 것입니다.'int totalOne = age;'가되어야합니다. 그러나 모호한 이론 이상에 대해서는 제 첫 코멘트를보십시오. BTW - 이것은'JLabel' /'JButton' 콤보 대신'JSpinner'에 더 적합합니다. –

답변

1

: 총 두 그래서 내가 18보다 큰 다른 값을 입력하면 예를 들어

JLabel

내 코드입니다 ... 추가로 하나를 추가해야합니다 JLabel의 현재 값을 가져온 다음 JLabel에 값을 추가합니다. 그들은 지역 변수이기 때문에
jLabel3.setText(""+(Integer.parseInt(jLabel3.getText())+1)); 

현재 0 이제까지 시간의 가치로 변수 totalOnetotalTwo 리셋이 조건문을 통해 실행됩니다.

+0

감사합니다 Tim,하지만 내 코드에 내 코드에 코드를 넣을 때 오류가 발생한다는 것을 이해합니다. 실제 인수 int는 메서드 호출 변환에 의해 String으로 변환 될 수 없습니다 ??? –

+0

@ G.Man이 내 코드를 편집 했으니 까? – Tim

+0

네 인생 보호기가 작동했습니다. D –

관련 문제