본문 바로가기

JAVA/JAVA

체크박스 배열 두가지 차이

반응형

체크박스 배열 두가지 차이


<코드1>

public class Tab03 extends JPanel implements ActionListener {


JCheckBox []jcb;

String []str = {"객체지향", "Interpreter 사용", "높은 이식성", "MultiThread 사용"};

JTextField jtf;


int i=0;


public Java01(){


jtf = new JTextField(50);

jcb = new JCheckBox[str.length];


for(int i=0; i<str.length; i++){

jcb[i] = new JCheckBox(str[i]);

add(jcb[i]);

jcb[i].addActionListener(this);

}

add(jtf);

}


@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

//4개의 체크박스의 상태를 모두 파악하여야한다.

String str ="";

//첫번째 체크박스가 선택이 되었는지 검사한다.


for(int i=0; i<jcb.length; i++ ){

if( jcb[i].isSelected() )

str = str + jcb[i].getText() + ",";

}

str=str.substring(0,str.length()-1);

jtf.setText(str);


}

}




<코드2>

public class Tab04 extends JPanel implements ActionListener {


JCheckBox jcb[] = new JCheckBox[4];


JTextField jtf;


public Tab04() {


jcb[0] = new JCheckBox("객체지향");

jcb[1] = new JCheckBox("interpreter 사용");

jcb[2] = new JCheckBox("높은 이식성");

jcb[3] = new JCheckBox("Multithreaded 제공");


jtf = new JTextField(20);


for (int i = 0; i < jcb.length; i++) {

add(jcb[i]);

jcb[i].addActionListener(this);

}


add(jtf);


}


@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub


String str = "";

int a = 0;


for (int i = 0; i < jcb.length; i++) {

if (jcb[i].isSelected()) {

str += jcb[i].getText() + ",";

} else {

jtf.setText(str);

}

}


try {

a = str.length();

str = str.substring(0, a-1);

jtf.setText(str);

} catch (Exception e1) {

System.out.println(e1);

}


}


}

반응형