Comunidad de diseño web y desarrollo en internet online

Cerrar SWF dentro de otro SWF

Citar            
MensajeEscrito el 23 Ago 2010 10:59 am
Hola!

Cargo correctamente un SFW sobre la pelicula principal con:

var avisomc=new Loader();
avisomc.load(new URLRequest("aviso.swf"));
addChild(avisomc);

El SWF que cargo contiene un botón para cerrar el SWF cargado, pero no consigo que funcione. Como puedo cerrar ese segundo SWF con el botón?

Gracias.

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

safari
Citar            
MensajeEscrito el 23 Ago 2010 02:19 pm
Tienes que hacer un removeChild del Loader, o Loader.unload()

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Ago 2010 02:40 pm
Ya lo intento, pero al estar el boton de cerrar en el mismo moviclip que quiero eliminar no me funciona, me da error.

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

safari
Citar            
MensajeEscrito el 23 Ago 2010 02:55 pm
Llama a una función en root que lo remueva

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Ago 2010 03:00 pm
Lo intento y te informo... Gracias.

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

safari
Citar            
MensajeEscrito el 23 Ago 2010 06:42 pm
Lo he intentado, pero no hay manera...alguna idea?

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

safari
Citar            
MensajeEscrito el 23 Ago 2010 06:50 pm
En root agregas:

Código ActionScript :

function descarga(){
   avisomc.unload()
}


Desde cualquier lado:

root.descarga()

¿Así lo probaste?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Ago 2010 07:35 pm
Lo he probado asi pero me da este error:


Scene 1, Layer 'Layer 4', Frame 1, Line 8 1061: Call to a possibly undefined method descarga through a reference with static type flash.display:DisplayObject.


Ya no se que mas probar... por cierto es actionscript 3.

Gracias.

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

safari
Citar            
MensajeEscrito el 23 Ago 2010 07:42 pm
Es porque al compilar no existe ... pero no se supone programar en timeline con AS3, así que mejor lo engañamos:

root["descarga"]()

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Ago 2010 07:52 pm
Sigue sin funcionar...

En el swf que tiene el boton tengo puesto esto:

cerrar_btn.addEventListener(MouseEvent.CLICK, cerraraviso);

function cerraraviso (e:Event):void{
root["descarga"]();

}

y el main esto:

function descarga(){
avisomc.unload();
}

Y aun asi obtengo este error:

TypeError: Error #1006: value no es una función.
at aviso_fla::MainTimeline/cerraraviso()

Esto es como la historia interminable... ;-)

Gracias por todo...

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

safari
Citar            
MensajeEscrito el 23 Ago 2010 07:55 pm
Pon todo el código que tienes en el mismo frame donde has declarado la función descarga

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Ago 2010 08:03 pm
Tengo el mismo error....

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

safari
Citar            
MensajeEscrito el 23 Ago 2010 08:29 pm
Ok, no me expresé bien
Postea en este hilo todo el código que tienes en el frame donde has agregado la función descarga

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Ago 2010 08:38 pm
Es bastante largo, ya que carga un monton de cosas:

Código ActionScript :

stop();
import flash.display.Loader;
import flash.events.*;
import flash.net.URLRequest;
import flash.display.Stage;
import flash.display.StageDisplayState;
import Sombra;
import Sonido;
import flash.net.*;



var so:Sonido = new Sonido("fondo.mp3", 3, 0, -1);
play_btn.visible=false;


mute.addEventListener(MouseEvent.CLICK, mutesound);
play_btn.addEventListener(MouseEvent.CLICK, playsound);

function playsound(e:Event):void
{
   var so:Sonido = new Sonido("fondo.mp3", 3, 0, -1);
   play_btn.visible=false;
   mute.visible=true;
}
                                          
function mutesound(e:Event):void
{
   SoundMixer.stopAll();
   play_btn.visible=true;
   mute.visible=false;
}

aviso.addEventListener(MouseEvent.CLICK, abrirw);
var avisomc=new Loader();

function abrirw(e:Event):void
{

avisomc.load(new URLRequest("aviso.swf"));
addChild(avisomc);

} 

function descarga(){
   avisomc.unload();
}




var loader:Loader = new Loader();
loader.load(new URLRequest("inicio2.swf"));
addChild(loader);
loader.x = 170;
loader.y = 75;

var banner:Loader = new Loader();
banner.load(new URLRequest("banner.swf"));
addChild(banner);
banner.x=-1;
banner.y=-1;

var banner2:Loader = new Loader();
banner2.load(new URLRequest("banner2.swf"));
addChild(banner2);
banner2.x=6;
banner2.y=75;



function onComplete(e:Event):void

      {
      addChild(loader);
      loader.x = 170;
      loader.y = 75;

      }

var sombra:Sombra = new Sombra(loader);

sombra.alfa=1;
sombra.color=0x73018F;
sombra.blurX=15;
sombra.blurY=15;
sombra.angulo=45;
sombra.distancia=0;

boton_col.addEventListener(MouseEvent.CLICK, cargamultimedia);

function cargamultimedia(e:MouseEvent):void
{
   loader.load(new URLRequest("multimedia.swf"));
}

boton_inicio.addEventListener(MouseEvent.CLICK, cargainicio);

function cargainicio(e:MouseEvent):void
{
   SoundMixer.stopAll();
   var so:Sonido = new Sonido("fondo.mp3", 3, 0, -1);
   loader.load(new URLRequest("inicio2.swf"));
}

boton_pres.addEventListener(MouseEvent.CLICK, cargapres);

function cargapres(e:MouseEvent):void
{
   loader.load(new URLRequest("escalante.swf"));
}

boton_con.addEventListener(MouseEvent.CLICK, cargaform);

function cargaform(e:MouseEvent):void
{
   loader.load(new URLRequest("formulario.swf"));
}

//Newsletter
enviar.addEventListener(MouseEvent.CLICK,carga);
function carga(e:Event) {
   var url:URLRequest = new URLRequest("http://www.davidescalante.net/prueba/insertar.php");
   var email:URLVariables=new URLVariables;
   email.mail=mail.text;
   url.data=email;
   url.method=URLRequestMethod.POST;
   sendToURL(url);
   trace("sendToURL:" + url + "?" + url.data);
   
}

A ver si encontramos una solucion, de momento solo he conseguido que funcione con la propiedad visible, pero me interesa que se descarge el swf.

Gracias.

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

safari
Citar            
MensajeEscrito el 24 Ago 2010 07:16 am
Al final investigando he conseguido remover el clip haciendo que tenga un comportamiento de botón y haciendo el remove al hacer click sobre el clip, aunque si alguien puede aportar luz sobre como hacer que un boton del clip lo cierre se lo agradeceria.

Este es el codigo que he utilizado:


aviso.addEventListener(MouseEvent.CLICK, abrirw);
var avisomc=new Loader();

function abrirw(e:Event):void
{

avisomc.load(new URLRequest("aviso.swf"));
addChild(avisomc);
avisomc.addEventListener(MouseEvent.CLICK, cerrarw);

function cerrarw(e:MouseEvent):void{
removeChild(avisomc);
}
}

Gracias.

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

safari

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.