2012-04-10 2 views
0

AS2에는 무비 클립이 스테이지에서 초기화 될 때 트리거되는 이벤트 onclipevent (load)가있었습니다. 많이 찾았지만 AS3에서 동일한 기능을 찾을 수있는 유일한 해결책은 무비 클립의 맞춤 클래스를 만드는 것입니다. 필자는 한 줄의 코드 만 실행하고 프로젝트에서 추가로 많은 AS 파일을 피하려고 노력하고 있기 때문에 약간의 잔인 함이 있습니다. MovieClip이 동적으로 추가되지 않아 Event.ADDED_TO_STAGE 등의 이벤트가 작동하지 않습니다.MovieClip이 AS2처럼 초기화 될 때 AS3 이벤트 찾기 onclipevent (load)

AS3에서 clipevent (로드)를 수행 할 수있는 방법이 있습니까?

답변

0

AS3에는 AS2 스타일 클립 이벤트가 없습니다. 당신이 당신의 클립 사용자 정의 클래스를 만드는 피하려면, 당신은 함수에서 초기화 코드를 넣을 수 있으며,이 같은 클립을 만들 때 즉시 전화 :

import flash.display.MovieClip; 
function onClipLoad(clip : MovieClip) : void 
{ 
    // do onLoadStuff here 
    clip.x = 100; 
    clip.y = 10; 
} 

// call onClipLoad when the clip is created, either in code or via timeline 
var myClip : MovieClip = new MyClip(); 
onClipLoad(myClip); 

더 나은, 당신은이 코드를 배치 할 수 있습니다 무비 클립 타임 라인의 프레임 1에서 인스턴스를 자동으로 초기화합니다.

var initialized : Boolean; 
if(!initialized) { 
    initialized = true; 
    // do init code here 
    x = 100; 
    y = 10; 
} 
+0

하! 와우는 그렇게 많은 의미를가집니다. 나는 혼란 스럽다는 사실에 놀랐습니다! 내가 AS2의 단점에 너무 익숙해 보이는 것처럼 보입니다. 나는 명백한 해결책을 시도한다고 생각조차하지 않았습니다! 감사합니다 마이크 – cronoklee

관련 문제