Comunidad de diseño web y desarrollo en internet online

No puedo remover swf cargado en un componente

Citar            
MensajeEscrito el 02 Nov 2012 01:33 pm
Amigos de Flex 3, tengo un menubar y de acuerdo a la opción elegida, cargo un swf utilizando un comp basado en canvas. Carga perfecto, pero si quiero remover el anterior swf/componente cargado con removeChild, no aparece ninguno. Supongo que es el tema del no sincronismo? Alguien me puede orientar? Paso trozo de función. Hice la prueba con At, pero es igual.

Código ActionScript :

private function Manejo(event:MouseEvent):void{
 ta1.text=(event.target.data.@data);
 switch(ta1.text)
                  {
                      case "Home":
                         var panel:miCompo = new miCompo();
                         panel.miParametro = "Vision.swf";
                        miCanvas.addChild(panel);
                          break; 
                      case "Opción 2":
                         panel.miParametro = "Op2.swf";
                        miCanvas.addChild(panel);
                          break;
default:
                          break;
                  }
            }

Por grodrig61

Claber

223 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 Nov 2012 02:24 pm
No entiendo, haces miCanvas.removeChild, luego el nuevo addChild y no aparece nada?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 02 Nov 2012 02:32 pm
exacto. en el switch que te escribi, hago por ejemplo:
case "Home":
miCanvas.removeChild(panel);
var panel:miCompo = new miCompo();
panel.miParametro = "Vision.swf";
miCanvas.addChild(panel);
break;
case "Opción 2":
miCanvas.removeChild(panel);
panel.miParametro = "Op2.swf";
miCanvas.addChild(panel);
break;

Por grodrig61

Claber

223 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 Nov 2012 02:39 pm
Estas quitando algo que defines en la línea siguiente, y es una variable local por lo que no funciona antes

miCanvas.removeChild(panel);
var panel:miCompo = new miCompo();

Prueba haciendo

miCanvas.removeChildAt(0)

Si tiene un solo elemento agregado, o haces un loop recorriendo numChidren, en cualquier caso no puedes hacer referencia a una variable local que no persiste entre llamadas

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 02 Nov 2012 02:43 pm
Hay solo uno agregado, siempre. Y anda perfecto! Gracias Jorge!

Por grodrig61

Claber

223 de clabLevel



 

chrome

 

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