グループで使用すると問題が発生しcheckbox
ます。イベントアクションを使用してcheckbox
ラベル文字列を取得します。私は2つのグループを使用しており、その時点でcheckbox
最初のグループをクリックすると、ラベルのテキストが変更されます。checkbox
しかし、最初のグループをクリックするとcheckbox
、両方のラベルが変更されます。
これが私のコードです:
/* <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
両方のラベル文字列が変更されることです。
では、どうすればそれを止めることができますか?