Tengo mi formulario swf, y aparte tengo una clase a la que he llamado Window, que me crea una ventana interna en el stage del formulario, la cosa está en que dentro de esa ventana tengo que cargar algunos .swf que habia creado anteriormente, y cada uno de esos .swf tienen variables, y llaman a otras clases, entonces pasa que el flash no diferencia que el stage principal, tiene diferentes variables, y valga la redundancia un stage diferente al que está dentro del objeto Window. para ser un poco mas explicativo le anexo un poco del código:
stage principal, fotograma 1
Código ActionScript :
var myWindow:Window= new Window(stage.stageWidth, stage.stageHeight);
myWindow.addEventListener("CERRAR",cierra_win);
addChild(myWindow);
function cierra_win(e:Event){
//FUNCION PARA CERRAR EL WINDOW
myWindow.close();
}
//FUNCION PARA MOSTRAR LA VENTANA 'WINDOW'
myWindow.show("cambia_clave.swf", "Cambiar Clave");
clase Window
Código ActionScript :
package {
//import .....
public class Window extends Sprite {
private var child:Sprite = new Sprite();
private var child1:Sprite = new Sprite();
private var childFondo:Sprite = new Sprite();
private var childTitulo:Sprite = new Sprite();
private var titulo:TextField = new TextField();
private var contTitulo:String = "";
private var path:String = "http://localhost/";
public var xAncho:int = 100;
public var xAlto:int = 100;
public var escenaAncho:int = 0;
private var boton:SimpleButton = new SimpleButton;
public var escenaAlto:int = 0;
public var contSwf:String = "";
public var myMovie:MovieClip = new MovieClip();
public var loader:Loader = new Loader();
public var myRequest:URLRequest;
public function Window(ancho1:int, alto1:int) {
escenaAncho = ancho1;
escenaAlto = alto1;
creaFondo(child1);
boton.addEventListener(MouseEvent.CLICK, Cierra);
}
public function Cierra(event:MouseEvent):void {
dispatchEvent(new Event("CERRAR"));
}
public function close():void{
removeChild(child1);
removeChild(child);
}
public function show(contenido:String, contenido2:String):void {
contSwf=contenido;
contTitulo = contenido2;
myRequest= new URLRequest();
myRequest.url = path+"swf/"+contSwf;
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, swfCompleto);
//AQUI ESTA MI PROBLEMA --->Donde coloco? Event.ADDED_TO_STAGE
loader.load(myRequest);
}
public function swfCompleto(event:Event):void {
xAncho= event.currentTarget.width+60;
xAlto= event.currentTarget.height+60;
contenidoTexto();
//draw DIBUJA EL FONDO DEL WINDOW
draw(child);
//Se agrega el titulo del window
tituloAlert(child);
agregarTextos(child);
//Se crea un boton cerrar
agregarBtn(child);
//Aquí comienza el problema, cuando se agrega el compilador toma ese swf como el mismo stage
child.addChild(myMovie).name = "myMovie";
myMovie.addChild(loader).name = "loader";
//Posicionar en el centro
child.x = int(escenaAncho /2) - int(xAncho / 2);
child.y = int(escenaAlto /2) -int(xAlto /2);
addChild(child1);
addChild(child);
}
//bla bla bla otras funciones de dibujo
}//Class Window
}//package
Ahora que está un poco mas claro, pues he leído un poco y al parecer la solución es Event.ADDED_TO_STAGE, pero no sé como implementarlo
