SoundFile
생성자는 생성자로 전달 PApplet
의 인스턴스를 기대한다.
스케치를 할 때 this
키워드를 사용하면 PApplet
인스턴스를 참조 할 수 있습니다.
하지만 Sound
클래스이므로 this
키워드는 Sound
인스턴스를 나타냅니다. 그것이 당신이 SoundFile
생성자에 전달하는 것입니다. 그리고 SoundFile
은 귀하의 Sound
클래스가 무엇인지 알지 못하므로 그 오류가 발생합니다.
이 문제를 해결하려면 PApplet
인스턴스를 SoundFile
생성자에 전달해야합니다.
옵션 1 : 매개 변수로 당신의 Sound
생성자에 PApplet
인스턴스를 통과 한 다음 SoundFile
생성자에 해당 매개 변수를 전달합니다. 귀하의 Sound
생성자는 다음과 같습니다 처리 이후 : 2
void setup(){
Sound yourSound = new Sound(this);
}
옵션 :
당신의 처리 스케치에서 다음 Sound(PApplet sketch){
file = new SoundFile(sketch, "upNoise.wav");
}
, 당신은 this
키워드를 사용하여 Sound
생성자에 PApplet
를 통과 할 것 모든 클래스를 내부 클래스로 취급 할 경우 스케치에서 this
을 전달하는 대신 스케치의 이름을 사용하여 "바깥 쪽"을 참조하는 약간 이상한 구문을 사용할 수도 있습니다.
Sound(){
file = new SoundFile(YourSketchName.this, "upNoise.wav");
}
는 그러나 이것은 조금 이상한이며, 모든 경우에 작동하지 않습니다, 그래서 당신은 당신의 스케치에서 this
을 통과 아마 더 낫다.
자세한 내용은 the reference에서 확인할 수 있습니다.
감사합니다. 첫 번째 옵션이 저에게 효과적이었습니다! –