자바공부를 막시작한 사람입니다. 왜 종료가 안되는것일까요..
봄나비
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import java.applet.Applet;
public class Sound_Test extends Applet implements ActionListener {
AudioClip sound; // 사운드 파일을 받기 위한 변수 선언
Button but1, but2, but3, but4;// 재생, 반복, 정지, 종료 버튼 변수 선언
public void init() {
// 사운드 파일 loving.mid 할당
sound = getAudioClip(getDocumentBase(), loving.mid);
// 재생 버튼 애플릿에 추가
but1 = new Button(play);
but1.addActionListener(this);
add(but1);
// 반복 버튼 애플릿에 추가
but2 = new Button(repeat);
but2.addActionListener(this);
add(but2);
// 정지 버튼 애플릿에 추가
but3 = new Button(stop);
but3.addActionListener(this);
add(but3);
// 종료 버튼 애플릿에 추가
but4 = new Button(quit);
but4.addActionListener(this);
add(but4);
}
// 버튼에 이벤트 동작 수행
public void actionPerformed(ActionEvent e) {
// play 버튼을 클릭했을 경우 사운드 시작
if(e.getSource()==but1)
{
sound.play();
showStatus(Play);
}
// repeat 버튼을 클릭했을 경우 사운드 반복 재생
else if(e.getSource()==but2)
{
sound.loop();
showStatus(Repeat);
}
// stop 버튼을 클릭했을 때 사운드 정지
else if(e.getSource()==but3)
{
sound.stop();
showStatus(stop);
}
// quit 버튼을 클릭했을 때 applet종료
else if(e.getSource()==but4)
{
System.exit(0);//이 어플리케이션을 종료한다는 의미
}
}
public void paint(Graphics g) {
g.drawString(사운드 재생 예제, 80, 60);
}
}혼자 주석달아가면서 공부중인데..
제가 찾아본바로는 System.exit(o); 구문을 만나면 그 즉시 애플릿이 종료된다고 하더군요
하지만 quit를 누르는 순간 cmd쪽엔 뭔가 에러들이 너무 올라가서..이틀째 이것만 파고 있네요
제가 원하는것은 애플릿 실행시에는 quit를 누르는순간 애플릿이 종료되고
브라우져로 볼때는 quit를 누르면 브라우져까지 같이 닫기도록 하고 싶습니다
고수분들의 조언부탁드려요
________________________________________________________________________________________________________
에러가 아닌 RuntimeException 이군요. 어디서 try-catch문을 사용하여 예외를 설정해줘야할지 도저히 감이 오질 않습니다
버튼3까지만들고 3까지 actionPerformed 를 사용하여 play loop stop까진 애플릿이 문제가 없는데
4번째 버튼을 만들고 system.exit(0);를 넣는순간 RuntimeException이 발생하네요
-
뽀대미녀
버튼이 4개 있죠.. play , loop , stop , quit
3개-play loop stop는 정상작동하지만
quit만 누르면 사람이 미쳐버리겠네요 이거.. -
일진오빠
글쎄요. 잘못된것이 안보여서 제가 복사 후 붙여넣기를 하여 테스트해보았습니다만.
재생, 중지, 종료 모두 정확히 작동하는군요. 다른부분에 문제가 있는게 아닐까요?