그룹에 checkbox
을 사용할 때 몇 가지 문제가 있습니다. 이벤트 액션을 사용하여 checkbox
라벨 문자열을 얻습니다. checkbox
에 두 그룹을 사용하고 있는데 그 때 처음에 checkbox
을 클릭하면 텍스트가 변경됩니다. 그러나 첫번째 그룹 checkbox
을 클릭하면 두 lables가 변경됩니다.Java 체크 박스 문제
여기 내 코드입니다 : 여기
/* <applet code="third.class" width=500 height=500></applet> */
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
public class third extends Applet implements ItemListener
{
private Label l1,l2;
private Checkbox cb,cbj2;
CheckboxGroup grp = new CheckboxGroup();
CheckboxGroup grp2 = new CheckboxGroup();
public void init()
{
Checkbox cb1 = new Checkbox("Mango",grp,false);
Checkbox cb2 = new Checkbox("Apple",grp,false);
Checkbox cb3 = new Checkbox("Orange",grp,false);
Checkbox cbj1 = new Checkbox("Male",grp2,false);
Checkbox cbj2 = new Checkbox("Female",grp2,false);
FlowLayout f1=new FlowLayout(FlowLayout.LEFT);
FlowLayout f2=new FlowLayout(FlowLayout.RIGHT);
FlowLayout f3=new FlowLayout(FlowLayout.CENTER);
cb1.addItemListener(this);
cb2.addItemListener(this);
cb3.addItemListener(this);
cbj1.addItemListener(this);
cbj2.addItemListener(this);
setLayout(f3);
add(cb1);
add(cb2);
add(cb3);
l1 = new Label(" ");
add(l1);
setLayout(f2);
add(cbj1);
add(cbj2);
l2 = new Label(" ");
add(l2);
}
public void itemStateChanged(ItemEvent e)
{
cb=(Checkbox)(e.getItemSelectable());
l1.setText(cb.getLabel());
cb2=(Checkbox)(e.getItemSelectable());
l2.setText(cb2.getLabel());
}
}
보기 이미지!
http://img201.imageshack.us/img201/9779/76059549.png
문제는 내가 그 시간에 처음으로 checkbox
그룹을 클릭하면 모두 라벨 문자열이 변경 얻을 것입니다.
어떻게 그럴 수 있습니까?
코드에서 컴파일 오류 (변수'itemStateChanged'가 정의되지 않은'방법 CB2'), 그 문제를 해결하시기 바랍니다있다. 또한이 문제는 변수 이름 지정과 관련이 있다고 생각합니다. – 1r0n1k
"java-me"태그를 지정하면 안됩니다. –