Foros del Web » Creando para Internet » Flash y Actionscript »

addChild / removeChild … no me funciona

Estas en el tema de addChild / removeChild … no me funciona en el foro de Flash y Actionscript en Foros del Web. Resulta que si el usuario teclea "control" se carga un swf en una posición, esto va bien pero cuando presiona otra letra "alt" por ejemplo ...
  #1 (permalink)  
Antiguo 27/04/2009, 04:21
 
Fecha de Ingreso: febrero-2009
Mensajes: 23
Antigüedad: 15 años, 1 mes
Puntos: 0
addChild / removeChild … no me funciona

Resulta que si el usuario teclea "control" se carga un swf en una posición, esto va bien pero cuando presiona otra letra "alt" por ejemplo necesito que se borre el swf de "control" y carge el nuevo… lo que tengo hasta ahora es:


Código:
stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownListener);

function keyDownListener(e:KeyboardEvent) {

	feedbackAlt.text = e.altKey.toString();
	feedbackCtrl.text = e.ctrlKey.toString();
	
	if (feedbackCtrl.text=="true"){
		var alert:Loader = new Loader();
		control.load(new URLRequest("control.swf"));
		control.contentLoaderInfo.addEventListener(Event.COMPLETE, insertMovie);
		function insertMovie(evt:Event):void{ 
		addChild(control);
		}
	}
	
}
Esto funciona ok, al presionar se carga el swf correspondiente, pero he probado a poner esto para intentar que al pulsar "alt" se elimine el contenido de "control"y no va…

Código:
if (feedbackCtrl.text=="false"){
	removeChild(control);
	}
Supogo que será un locura hacerlo así… pero es lo que he entendido… algunaidea?

Última edición por enlasombra; 27/04/2009 a las 04:35
  #2 (permalink)  
Antiguo 27/04/2009, 06:26
Avatar de Lynxcraft  
Fecha de Ingreso: noviembre-2007
Ubicación: yecla murcia
Mensajes: 1.346
Antigüedad: 16 años, 4 meses
Puntos: 51
Respuesta: addChild / removeChild … no me funciona

Código PHP:
stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownListener);

function 
keyDownListener(e:KeyboardEvent) {
       var 
alert:Loader = new Loader();
    
feedbackAlt.text e.altKey.toString();
    
feedbackCtrl.text e.ctrlKey.toString();
    
    if (
feedbackCtrl.text=="true"){
        
        
control.load(new URLRequest("control.swf"));
        
control.contentLoaderInfo.addEventListener(Event.COMPLETEinsertMovie);
        function 
insertMovie(evt:Event):void
        
addChild(control);
        }
if (
feedbackCtrl.text=="false"){
    
removeChild(control);
    }
    }
    

__________________
Sobran las ideas cuando faltan ganas de trabajar en ellas
Lynxcraft
  #3 (permalink)  
Antiguo 27/04/2009, 06:37
 
Fecha de Ingreso: febrero-2009
Mensajes: 23
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: addChild / removeChild … no me funciona

no funciona…

Código:
stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownListener);



function keyDownListener(e:KeyboardEvent) {
       var alert:Loader = new Loader();
    feedbackAlt.text = e.altKey.toString();
    feedbackCtrl.text = e.ctrlKey.toString();
    
    if (feedbackCtrl.text=="true"){
        
        alert.load(new URLRequest("alert.swf"));
        alert.contentLoaderInfo.addEventListener(Event.COMPLETE, insertMovie);
        function insertMovie(evt:Event):void{ 
        addChild(alert);
        }
if (feedbackCtrl.text=="false"){
    removeChild(alert);
    }
    }
    
}
ahora le he llamado al "alert" en lugar de control para no liar, pero no funciona, no da errores pero no va.
Cuando se ejecuta y pulsas "control" carga el swf "alerta" ya que feedbackCtrl es true pero a continuación pulsas otra tecla y aunque el feedbackCtrl es false no se quita, pero si en lugar de removeChild(alert); le pongo un gotoAndStop (2)… así si lo hace, lo cual quire decir (creo) que el condicional si va, lo que no va es el remove…



alguna idea de porqué…
  #4 (permalink)  
Antiguo 27/04/2009, 07:08
Avatar de Lynxcraft  
Fecha de Ingreso: noviembre-2007
Ubicación: yecla murcia
Mensajes: 1.346
Antigüedad: 16 años, 4 meses
Puntos: 51
Respuesta: addChild / removeChild … no me funciona

perdona no había caído en cuenta mi el problema es que si la variables esta dentro de la funcion
Código PHP:
stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownListener);


   var 
alert:Loader = new Loader();
function 
keyDownListener(e:KeyboardEvent) {
    
    
feedbackAlt.text e.altKey.toString();
    
feedbackCtrl.text e.ctrlKey.toString();
    
    if (
feedbackCtrl.text=="true"){
        
        
alert.load(new URLRequest("alert.swf"));
        
alert.contentLoaderInfo.addEventListener(Event.COMPLETEinsertMovie);
        function 
insertMovie(evt:Event):void
        
addChild(alert);
        }
if (
feedbackCtrl.text=="false"){
    
removeChild(alert);
    }
    }
    

pensé que la avía sacado antes XDXDXD

asi no tiene que darte problemas
__________________
Sobran las ideas cuando faltan ganas de trabajar en ellas
Lynxcraft
  #5 (permalink)  
Antiguo 27/04/2009, 22:35
 
Fecha de Ingreso: febrero-2009
Mensajes: 23
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: addChild / removeChild … no me funciona

PUes… no va tampoco… pero creo que ya estamos más cerca…

Código:
stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownListener);


   var alert:Loader = new Loader();
function keyDownListener(e:KeyboardEvent) {
    
    feedbackAlt.text = e.altKey.toString();
    feedbackCtrl.text = e.ctrlKey.toString();
    
    if (feedbackCtrl.text=="true"){
        feedbackCtrl.text="1";
        alert.load(new URLRequest("alert.swf"));
        alert.contentLoaderInfo.addEventListener(Event.COMPLETE, insertMovie);
        function insertMovie(evt:Event):void{ 
        addChild(alert);
        }
if (feedbackCtrl.text=="false"){
    removeChild(alert);
	 feedbackCtrl.text="2";
    }
    }
    
}
He metido estos controles para ver en que en que momento deja de ir… resulta que le cuando pulsas "control" se carga el swf "alert" y en el campo de texto coloca "1"… pero al darle a "Alt" …coloca "false" pero no "2" lo que quieres decir que no está haciendo el segundo condicional… ¿Por que?… ni idea.


He intentado ponerle in "else" en lugar de otro condicional a ver si ese es el problema pero me da errores ya que no lo estaré poniendo bien…

Muchas gracias de nuevo por las moelestias y la dedicación

La vedad es que tioene que ser una tonteria… pero como to2

Última edición por enlasombra; 27/04/2009 a las 22:50
  #6 (permalink)  
Antiguo 28/04/2009, 07:11
Avatar de Lynxcraft  
Fecha de Ingreso: noviembre-2007
Ubicación: yecla murcia
Mensajes: 1.346
Antigüedad: 16 años, 4 meses
Puntos: 51
Respuesta: addChild / removeChild … no me funciona

después de ver en ayuda, la razón del porque no te funciona es que la si utilizas la versión cs3 para abajo del flash el altKey no esta activado no se si ya lo incorpora la version AS4 , en la ayuda pone lo siguiente

Cita:
altKey propiedad

altKey:Boolean [read-write]

Versión del lenguaje : ActionScript 3.0
Versión del reproductor : Flash Player 9


Se reserva para su uso futuro. Esta propiedad no se admite actualmente.


Implementación
public function get altKey():Boolean
public function set altKey(value:Boolean):void
dicho esto no puedes hacer comparaciones de true o false con solo presionar la tecla alt como lo hace el control, asi tendrias que revisar si el AS4 ya lo admite
__________________
Sobran las ideas cuando faltan ganas de trabajar en ellas
Lynxcraft
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:24.