2011-12-08 3 views
2

이미지의 소스 속성이 변경되고 이미지 표시 객체가 새 데이터를로드 한 후 실행되는 이벤트를 찾고 있습니다. 나는 'complete'이벤트가 갈 길이라고 생각했지만 소스가 바뀌 자마자 시작되는 것 같지만 이미지가로드되기 전에 시작됩니다. 아래의 스 니펫에서는 imgMap이 doExport()의 바이트로 업데이트되면 imgMap_completeHandler가 실행되도록하려고합니다.Actionscript - 이미지 소스가 변경되고 완료되었을 때 알림 이벤트로드 중

public function doExport(bytes:ByteArray):void 
{ 
    FlexGlobals.topLevelApplication.addElement(this); 
    imgMap.source = bytes; 
} 

protected function imgMap_completeHandler(event:Event):void 
{ 
    var pngEncoder:PNGEncoder = new PNGEncoder(); 
    var snapShot:ImageSnapshot = ImageSnapshot.captureImage(this,0,pngEncoder); 
    export = snapShot.data; 
    dispatchEvent(new Event("exportComplete")); 
} 

<s:Image id="imgMap" complete="imgMap_completeHandler(event)" width="100%" height="100%"/> 
+0

당신은 exportComplete라는 이벤트/기능이 있습니까 – mgraph

+0

아마 INIT가 작동합니다. Image 구성 요소에 익숙하지 않지만 다른 많은 Flash 구성 요소에서 INIT는 데이터가 변경된 후 사용할 수있는 이벤트입니다. –

+0

수수께끼. 문서에서, 분명히 이것이 작동해야하는 것처럼 들립니다. 다시 한번 시도해 볼 또 다른 이벤트는'ready' 이벤트입니다 만 * BitmapImage.as * (Image.as *의 많은 부분이이 패키지의 래퍼입니다)를 보면'ready' 이벤트가' 완료. – merv

답변

0

이미지 클래스와 소스 메소드를 확장하려고 했습니까?

은 당신은 단지

public function source(....) 
{ 
    [super source...] 
    dispatchEvent(new Event('Loaded')); 
} 

는 희망이 도움이 후 표준 이벤트를 생성 할 수 있습니다!

관련 문제