import java.awt.*;
import java.awt.event.*;

public class EventHomeWork extends Frame implements ItemListener{
Panel p1, p2, p3;
CheckboxGroup g1;
Checkbox rdoThree, rdoFour;
Checkbox chkRed, chkYellow, chkLeft, chkGreen;
Button btnRed, btnYellow, btnLeft, btnGreen;
public EventHomeWork() {
addWindowListener(new WinClosing(this));
p1 = new Panel();
p2 = new Panel();
p3 = new Panel();
chkRed = new Checkbox("빨강");
chkYellow = new Checkbox("노랑");
chkLeft = new Checkbox("좌회전");
chkGreen = new Checkbox("초록");
g1 = new CheckboxGroup();
rdoThree = new Checkbox("3등식", g1, false);
rdoFour = new Checkbox("4등식", g1, true);
btnRed = new Button("빨강");
btnYellow = new Button("노랑");
btnLeft = new Button("<-");
btnGreen = new Button("초록");
p1.add(rdoThree);
p1.add(rdoFour);
p2.add(chkRed);
p2.add(chkYellow);
p2.add(chkGreen);
p2.add(chkLeft);
p3.setLayout(new GridLayout(1, 4));
p3.add(btnRed);
p3.add(btnYellow);
p3.add(btnGreen);
p3.add(btnLeft);
add("North",p1);
add("Center",p2);
add("South",p3);
rdoThree.addItemListener(this);
rdoFour.addItemListener(this);
chkRed.addItemListener(this);
chkYellow.addItemListener(this);
chkGreen.addItemListener(this);
chkLeft.addItemListener(this);
}
@Override
public void itemStateChanged(ItemEvent e) {
Checkbox cb = (Checkbox)e.getSource();
switch(cb.getLabel()){
case "3등식" :
chkLeft.setVisible(false);
break;
case "4등식" : 
chkLeft.setVisible(true);
break;
case "빨강" :
if(cb.getState() == true){
btnRed.setBackground(Color.red);
}else{
btnRed.setBackground(new Color(234,234,234));
}
break;
case "초록" :
if(cb.getState() == true){
btnGreen.setBackground(Color.green);
}else{
btnGreen.setBackground(new Color(234,234,234));
}
break;
case "노랑" :
if(cb.getState() == true){
btnYellow.setBackground(Color.yellow);
}else{
btnYellow.setBackground(new Color(234,234,234));
}
break;
case "좌회전" :
if(cb.getState() == true){
btnLeft.setBackground(Color.orange);
}else{
btnLeft.setBackground(new Color(234,234,234));
}
break;
}
}
public static void main(String[] args) {
EventHomeWork test = new EventHomeWork();
test.setSize(300,400);
test.setVisible(true);
}


'Java' 카테고리의 다른 글

[과제] 로또 번호  (0) 2017.06.26
[과제] 입력받는 성적표  (0) 2017.06.26
[JAVA 정리] 18. 네트워크  (0) 2017.06.24
[JAVA 정리] 17. Windows Programming  (0) 2017.06.24
[JAVA 정리] 16. Thread  (0) 2017.06.24

+ Recent posts