2009-05-29 10 views
0

Wie kann ich mit ActionScript auf verschiedene Frames eines Movieclips zeichnen. Das heißt, machen Sie es so, dass movieClip.gotoAndStop (0); zeigt etwas anderes als movieClip.gotoAndStop (1);Flex: Zeichnen Sie auf verschiedenen Bildern eines MovieClip

+0

Ein Frame-basiertes System ist möglicherweise nicht die beste Lösung für Ihr Problem, wenn Sie im Flex-Bereich arbeiten - was möchten Sie erreichen? –

+0

Ich wollte Animation machen, indem ich jeden Frame der Animation in einen anderen Frame eines Movieclips lade. Ich habe mich entschieden, meine eigene Animationsklasse mit BitmapData usw. zu schreiben. – Jesse

+0

Ja, das ist wahrscheinlich ein besserer Ansatz. –

Antwort

0

Sie können addFrameScript in Ihrem Code verwenden.

Angenommen, Sie haben einen MovieClip mit der Klasse CustomMovieClip verknüpft.

In Ihrem CustomMovieClip Konstruktor, Sie so etwas wie die folgenden (ungetestet Code) schreiben:

Klasse CustomMovieClip {

...

Funktion CustomMovieClip() { stop() ;

// ADD drawGraphicsForFrame1 Code in Frame 0

addFrameScript (0, drawGraphicsForFrame1);

// ADD drawGraphicsForFrame2 Code in Rahmen 1

addFrameScript (1, drawGraphicsForFrame2); ...

}

private Funktion drawGraphicsForFrame1(): void { stop();

var Sprite: Sprite = neuer Sprite(); addChildAt (Sprite, 1);

// in Sprite zeichnen

sprite.graphics.lineStyle ...

}

private Funktion drawGraphicsForFrame2(): void {

// remove the previous sprite (assumption: it's always at layer 1) 

if (getChildAt(1) != null) 
    removeChildAt(1); 

// draw new sprite 

var sprite:Sprite = new Sprite(); 
addChildAt(sprite, 1); 

sprite.graphics.lineStyle ... 

}

...