Risolto!
La soluzione è suggerita in questa tua lezione:
Added_to_stage
In pratica ho usato
Code:
Event.ADDED_TO_STAGE
nelle classi Circle e Square
Come sempre sei un grande Flep anche se non proferisci parola

!
riposto il codice delle classi Square Circle e GetDefinitionByNameExample modificato:
Square.as
Code:
package
{
import flash.display.*;
import flash.events.Event;
public class Square extends MovieClip
{
public function Square()
{
addEventListener(Event.ADDED_TO_STAGE,quadrato);
}
private function quadrato(evt:Event):void
{
removeEventListener(Event.ADDED_TO_STAGE,quadrato);
var rect:Shape = new Shape();
rect.graphics.lineStyle(1);
rect.graphics.beginFill(0x0000FF, 1);
rect.graphics.drawRect(0, 0, 20, 20);
addChild(rect);
}
}
}
Circle.as
Code:
package
{
import flash.display.*;
import flash.events.Event;
public class Circle extends MovieClip
{
public function Circle()
{
addEventListener(Event.ADDED_TO_STAGE,cerchio);
}
private function cerchio(evt:Event):void
{
removeEventListener(Event.ADDED_TO_STAGE,cerchio);
var circ:Shape = new Shape();
circ.graphics.lineStyle(1);
circ.graphics.beginFill(0xff00ff, 1);
circ.graphics.drawCircle(5, 5, 10);
addChild(circ);
}
}
}
GetDefinitionByNameExample.as
Code:
package {
import flash.display.*;
import flash.utils.*;
public class GetDefinitionByNameExample extends MovieClip {
private var container_mc:MovieClip;
private var clip:Square;
private var clip_1:Circle;
public function GetDefinitionByNameExample()
{
displayContent('Square');
displayContent('Circle');
}
private function displayContent(s:String):void
{
container_mc = new MovieClip();
addChild(container_mc);
var ClassReference:Class = getDefinitionByName(s) as Class;
var istance:MovieClip = new ClassReference();
istance.scaleX=istance.scaleY=2;
istance.x=10;
istance.y=25;
container_mc.addChild(istance);
}
}
}
prossimo passo:
estendere il mio esercizio con le Tween del tuo esempio usando Caurina...
se ho problemi naturalmente ingolfo il forum
