체크박스 실행시 이벤트 설정입니다.
나라찬
ib는 실행전 이미지패널
ip는 실행후 이미지패널이구요.
실행이 안되네요;
체크박스에 체크하면 이미지 크기가 변하는 메소드입니다.
// 체크박스 선택 시 변수 설정
public void actPerformed(ActionEvent e) {
Object obj = e.getSource();
Checkbox b = (Checkbox)e.getSource();
if (e.getSource()==cb1) command = SHOW_NORM;
if (e.getSource()==cb2) command = SHOW_PART;
if (e.getSource()==cb3) command = SHOW_BIG;
if (e.getSource()==cb4) command = SHOW_SMALL;
if (e.getSource()==cb5) command = SHOW_HORIZONTAL;
if (e.getSource()==cb6) command = SHOW_VERTICAL;
if (e.getSource()==cb7) command = SHOW_ALL;
repaint();
}
// 선택에 따른 이미지변화
public void action(Graphics g) {
d = ib.getSize();
switch (command) {
case SHOW_NORM:
ip.setBounds(350,0,350,350);
add(ip);
break;
case SHOW_PART:
g.drawImage(img, 0,d.height, d.width/2,d.height+d.width/2, 0,0, d.width/2,d.height/2,this);
ip.setBounds(350,0,350,350);
ip.setImg(img);
break;
case SHOW_BIG:
g.drawImage(img, 0,d.height, 400,d.height+400, 100,100, 300,300,this);
ip.setBounds(350,0,350,350);
ip.setImg(img);
break;
case SHOW_SMALL:
g.drawImage(img, 0,d.height, d.width/2,d.height+d.width/2, 0,0, d.width,d.height,this);
ip.setBounds(350,0,350,350);
ip.setImg(img);
break;
case SHOW_HORIZONTAL:
g.drawImage(img, 0,d.height, d.width,d.height+d.height, d.width,0, 0,d.height,this);
ip.setBounds(350,0,350,350);
ip.setImg(img);
break;
case SHOW_VERTICAL:
g.drawImage(img, 0,d.height, d.width,d.height+d.height, d.width,d.height, 0,0,this);
ip.setBounds(350,0,350,350);
ip.setImg(img);
break;
case SHOW_ALL:
g.drawImage(img, 0,d.height, d.width,d.height+d.height, 0,d.height, d.width,0,this);
ip.setBounds(350,0,350,350);
ip.setImg(img);
}
}
뭐가 잘못된걸까요 =_ = a
-
도란 2023-08-26
paint(Graphics g) { action(g); }