2011-12-09 2 views
1

그래서 나는이 물건을 조금씩 경험하고 있습니다. 그러나이 문제는 너무 이상하고 거의 불공평하여, 무엇을해야할지 모르겠습니다. 설명하기 위해, 여기 내 코드 : 코드의 가장 큰 부분에 너무 많은 관심을 지불하지 마십시오 명확하게 임포트되었지만 생성자가 정의되지 않았습니까?

import java.awt.*; 
import java.util.*; 
import javax.media.j3d.*; 
import javax.swing.Timer; //I import the Timer class here, it is accepted 
import javax.vecmath.*; 
import com.sun.j3d.utils.universe.*; 
import com.sun.j3d.utils.behaviors.keyboard.*; 
import com.sun.j3d.utils.behaviors.vp.*; 
import com.sun.j3d.utils.geometry.*; 

public class Scene extends BranchGroup { 
public Scene() { 

Transform3D translate = new Transform3D(); 
translate.setTranslation (new Vector3d (0f, 0f, -10.f)); 
TransformGroup objTranslate = new TransformGroup (translate); 
this.addChild (objTranslate); 

Box box = new Box (0.7f, 0.7f, 0.7f, new Appearance()); 
objTranslate.addChild (box); 

javax.swing.Timer timer = new javax.swing.Timer(5, this); //error message "The constructor Timer(int, Scene) is undefined" 
timer.start(); 
} 
} 

, 그것은 여전히 ​​초안, 나중에 세련됩니다. 항상 The constructor Timer(int, Scene) is undefined을 반환하는 타이머 문제가 있습니다. 최대한 많은 수입을 추가했습니다. Timer 클래스를 가져 오는 것이 가능한 명확하게 정의되었습니다. timer.start()은 잘 작동하므로 클래스가 어쨌든 인식됩니다. 그러나 프로그램은 실행되지 않습니다. 정의되지 않았기 때문입니다. 비록 수입 되더라도. 그리고 나는 이유를 모른다.

당신 중 누구라도 아이디어를 갖고 있습니까? 아니면 무슨 일이 일어나고 있는지 설명 할 수 있습니까?

감사합니다.

+0

"코드의 가장 큰 부분에 너무 많은 관심을 기울이지 마십시오. 아직 초안입니다."- 앞으로는 해당 질문과 관련된 코드 만 포함하는 짧고 완전한 예제를 제공하십시오. http://tinyurl.com/so-hints를 읽으십시오. –

+0

네, 한번 다시 읽으신 걸 알았습니다. 문제가있는 곳을 아는 것이 더 쉽습니다. 죄송합니다. –

답변

4

Scene 클래스가 ActionListener을 구현하지 않습니다. herehere을 참조하십시오. 즉

Timer 클래스는 intScene 또는 BranchGroup를 사용하는 생성자가 없습니다. intActionListener을 사용하는 생성자 만 있습니다.

+0

어, 바보 같이! 나는 그것을 잊는다.. 고마워! –

+0

링크가 끊어졌습니다. – zic10

+0

@ zic10 : 감사합니다. 결정된. – Behrang

관련 문제