2011-12-15 4 views
0

좋아, 그래서 무작위로 화면에 상자를 추가하는 데 문제가 있습니다. 이전에 해봤지만 상대적으로 쉬운 해결책이있는 것처럼 보입니다. 그러나 아아, 나는 이것을 이해할 수 없었다. 이것은 정보입니다 :화면에 무작위로 객체 추가 as3

상자로 내보내기가 가능한 상자가 있습니다. 나는이 코드와 상자 액션 스크립트 파일이 :

package { 
    import flash.display.MovieClip; 
    import flash.events.Event; 
    import flash.events.MouseEvent; 
public class Box extends MovieClip { 

    public function Box() { 
     createBox(); 

    } 

    private function createBox():void { 

     var _box:Box = new Box(); 
     _box.x = Math.random()*stage.stageWidth ; 
     _box.y = Math.random()*stage.stageHeight; 
     stage.addChild(_box); 

    } 
} 
} 

아무것도 전혀 발생하지 않습니다하지만 오류가 없습니다. 또한 나는 모든 것을 수업 시간에 지키고 싶다.

1) 문서 클래스로 클래스를 사용하는 경우 다음 클래스 이름과 연관되지 않은 문서 클래스의 고유 즉 이름이어야합니다 :

+8

상자가 만들어지면 생성자는 새 상자를 만드는 메서드를 호출합니다. 거기에 상자를 많이 만들고 있습니다. – Kapep

+1

@kapep이 맞습니다. 무한 재귀를 만들었고 잠시 후에 스택 오버플로 (!) 오류가 발생해야합니다. – weltraumpirat

+0

어떻게 1을 만들 수 있습니까? – Thor625

답변

0

가 작동하지 않습니다 때문에 그 코드의 코드에서 일이 모든 라이브러리 기호.

package 
{ 
    import flash.display.MovieClip; 
    import flash.events.Event; 
    import flash.events.MouseEvent; 

    public class Main extends MovieClip 
    { 
     private var _box:Box = new Box(); 

     public function Main() 
     { 
      createBox(); 
     } 

     private function createBox():void 
     { 
      trace(Math.random()*stage.stageWidth) 
      _box.x = Math.random()*stage.stageWidth ; 
      _box.y = Math.random()*stage.stageHeight; 
      stage.addChild(_box); 
     } 
    } 
} 
+0

저는 Main이라는 다른 문서 클래스를 가지고 있습니다. 그러나 이것은 상자 무비 클립을위한 것입니다. – Thor625