CheckboxComponent 클래스의 주요 생성자 |
- public CheckboxComponent(String str, Image img) 주어진 문자열과 이미지로 새로운 CheckboxComponent를 생성한다. |
- public CheckboxComponent(String str, Image img, CheckboxGroup, cbg) 주어진 문자열과 이미지로 그룹핑 된 새로운 CheckboxComponent를 생성한다. |
- public CheckboxComponent(String str, Image img, boolean b) b에 의해 초기 상태가 결정되고, 주어진 문자열과 이미지로 CheckboxComponent를 생성한다. |
CheckboxComponent 클래스의 주요 생성자 |
- public void setState(boolean b) CheckboxComponent의 선택 상태를 변경한다. |
- public void paintContent(Graphics g) 내부를 칠한다. |
- public boolean keyNotify(int type, int key) 키 입력을 받으면 호출된다. |
- public void setChangeListener(ChangeListener listener, Object obj) CheckboxComponent에 ChangeListener를 등록한다. |
CheckboxGroup은 여러 개의 CheckboxGroup들을 엮어 그룹화된 라디오 버튼처럼 움직이게 한다. 하나의 CheckboxGroup으로 등록된 CheckboxComponent들은 동시에 여러 개라 On상태가 될 수 없고 하나의 CheckboxComponent만이 On 상태가 될 수 있다. 그러므로 하나의 Checkbox가 On 되면 다른 모든 Group으로 묶인 Checkbox 들은 Off가 된다. 초기 값으로는 맨 처음에 등록된 CheckboxComponent가 On 된다.
CheckboxGroup 클래스의 주요 생성자 |
- public CheckboxGroup() 새로운 CheckboxGroup을 생성한다. |
CheckboxGroup 클래스의 주요 메소드 |
- public void select(CheckboxComponent cbc) CheckboxGroup로 묶여있는 CheckboxComponent 중에서 주어진 컴포넌트를 On 상태로 한다. |
- public CheckboxComponent getSelectedCheckbox() |
- public void setChangeListener(ChangeListener listener, Object obj) CheckboxGroup에 ChangeListener를 등록한다. |
예제를 보도록 하자.
import org.kwis.msp.lcdui.*;
import org.kwis.msp.lwc.*;
public class wipiTest extends Jlet implements ChangeListener{
ShellComponent sc= new ShellComponent();
FormComponent fc= new FormComponent();
LabelComponent lb= new LabelComponent();
CheckboxGroup cbg= new CheckboxGroup();
CheckboxComponent cbc1= new CheckboxComponent("전화번호부", null, cbg);
CheckboxComponent cbc2= new CheckboxComponent("자기정보수정", null, cbg);
CheckboxComponent cbc3= new CheckboxComponent("부가서비스", null, cbg);
CheckboxComponent cbc4= new CheckboxComponent("시스템정보", null, cbg);
public void startApp(String args[]){
cbg.setChangeListener(this, null);
cbg.select(cbc1);
fc.addComponent(lb);
fc.addComponent(cbc1);
fc.addComponent(cbc2);
fc.addComponent(cbc3);
fc.addComponent(cbc4);
sc.addComponent(fc);
sc.show();
}
public void pauseApp(){}
public void resumeApp(){}
public void destroyApp(boolean b){}
public void changed(Component c, Object obj){
if(cbg.getSelectedCheckbox()==cbc1){
lb.setLabel("전화번호부");
}else if(cbg.getSelectedCheckbox()==cbc2){
lb.setLabel("자기정보수정");
}else if(cbg.getSelectedCheckbox()==cbc3){
lb.setLabel("부가서비스");
}else if(cbg.getSelectedCheckbox()==cbc4){
lb.setLabel("시스템정보");
}else{
lb.setLabel("정의되지않은체크박스입니다.");
}
}
};
출력 결과는 다음과 같다.
'Computer > Jlet' 카테고리의 다른 글
[19] 컴포넌트 - (9)TextComponent (0) | 2006.09.16 |
---|---|
[18] 컴포넌트 - (8)AnnunciatorComponent (0) | 2006.08.12 |
[16] 컴포넌트 - (6)DialogComponent (0) | 2006.08.12 |
[15] 컴포넌트 - (5)ButtonComponent (0) | 2006.08.12 |
[14] 컴포넌트 - (4)ListComponent/ListItemComponent (0) | 2006.08.12 |