2011-10-11 3 views
0

안녕하세요 저는 약간의 수업을 받았으며 모든 것이 잘 작동합니다. 그런 다음 문서 클래스 및 퍼프에 추가하면 오류 1034가 발생합니다.문서 클래스의 오류 # 1034

오류 # 1034 : 유형 강제 변환 실패 : fl.text.TCMText에 flash.display :: 무비 클립 @ 2be9dba1을 변환 할 수 없습니다. flash.display :: 스프라이트/constructChildren()에서 flash.display
: 스프라이트()에서 flash.display
:: 영화 클립()에서 Wyjazd()에서 Wyjazd
에서
은/wyskok()

내 수업 코드.

package 
{ 
    import fl.transitions.Tween; 
    import fl.motion.easing.*; 
    import flash.filters.*; 
    import flash.events.MouseEvent; 
    import flash.display.Stage; 
    import flash.display.MovieClip; 

    public class Wyjazd extends MovieClip 
    { 

     public function Wyjazd(ar:Array=null) 
     { 
      if (ar!=null) 
      { 
       init(ar); 
      } 
     } 

     public function init(ar:Array):void 
     { 
      var time:Number = 0.2; 
      var offset:Number = 0; 
      var posX:Array = new Array(12); 
      for (var i:Number = 0; i < ar.length; i++) 
      { 

       var tween:Tween = new Tween(ar[i],"x",Sine.easeOut,ar[i].x,266.65 + offset,time,true); 

       ar[i].addEventListener(MouseEvent.CLICK,onClick); 
       posX[i]=ar[i].x; 
       time += 0.02; 
       offset += 15.25; 
      } 


      function onClick(e:MouseEvent) 
      { 
       time = 0.2; 
       for (var i:Number = 0; i < ar.length; i++) 
       { 
        var tween:Tween = new Tween(ar[i],"x",Sine.easeOut,ar[i].x,posX[i],time,true);  
        time += 0.02; 
       } 
      } 

     } 

    } 
} 

그리고 프레임 번호 :

import flash.events.MouseEvent; 
import fl.transitions.Tween; 
import flash.display.MovieClip; 
stop(); 
ofertaBTN.addEventListener(MouseEvent.CLICK, wyskok); 
function wyskok(e:MouseEvent) 
{ 
    var vektor:Array =new Array (I,II,III,IV,V,VI,VII,VIII,IX,X,XI,XII); 
    var menu:Wyjazd = new Wyjazd(vektor); 
} 

답변

0

내가 당신 .FLA보고 밖으로 확실히 말할 수는 없지만 ...

당신이 당신을 점점 오류 바탕으로 노력하고있다 Text (여러분의 vektor 배열 (I, II, III, ...))을 MovieClip으로 변환하면 플래시에서 그렇게 할 수 없으며 Tween의 비 표시 물체는 사용할 수 없습니다 ..

나는 인스턴스를 대상으로 인스턴스 이름이 I, II, III, IV, V ... 인 무대에 있습니다.

프레임에 배열을 작성하는 대신 문서 클래스에서 빌드하십시오. [- V II] 모든 물체가 밖으로 문제를 이동

package { 

    import flash.display.MovieClip; 
    import flash.events.Event; 
    import fl.transitions.Tween; 
    import fl.motion.easing.*; 


    public class arrayInst extends MovieClip { 

     public var allInstanceReferences:Array; 

     public function arrayInst() { 
      // constructor code 

      allInstanceReferences = new Array(I, II, III, IV, V); 
      this.addEventListener(Event.ENTER_FRAME, moveAllReferences); 
     } 

     private function moveAllReferences(e:Event):void{ 
      for (var i:uint = 0; i < allInstanceReferences.length; i++){ 
       var tweenThis:Tween = new Tween(allInstanceReferences[i], "x", Sine.easeOut, allInstanceReferences[i].x, 250, 2, true); 
      } 
     } 
    } 

} 

내 allInstanceReference 배열이 TLF 텍스트 필드 [I]과 무비 클립에 대한 참조를 포함 : 나는 작품을 여기에 간단한 예제를 만들었습니다.

+0

vektor : array = [I, II, III ...] // 배열 객체라고 가정합니다. –

+0

이 경우 객체 참조를 전달하는 방법을 변경해야합니다. 그것은 단지 그것이 작동했을 때와 같은 방식으로 프레임에 되돌려 놓습니다. – Cleanshooter

+0

예로 작성하십시오. addChild (I); 클래스 코드에? –