ArgumentError: Error # 2025: El DisplayObject proporcionado debe ser un hijo de la persona que llama error - AS

StackOverflow https://stackoverflow.com/questions/2492036

Pregunta

Tengo este fragmento de código dentro de una función que comprueba si existe un objeto en el escenario y lo elimina:

public function closeContent(e:MouseEvent):void { 
    removeChild(txt);
    removeChild(ldr.content);
    removeChild(_closeButton);
    container_mc.visible = false;
    statusText.text="";
    if (contains(submitButton)) {
        removeChild(submitButton);
    }
    if (contains(saveinfoButton)) {
        removeChild(saveinfoButton);
    }
}

He intentado cambiar stage con this y root pero siempre obtener este error ArgumentError: Error #2025: The supplied DisplayObject must be a child of the caller

¿Fue útil?

Solución

Las señales de error que usted está tratando de eliminar un DisplayObject con removeChild que aparentemente no es un hijo de la DisplayObjectContainer este código se ejecuta desde.

Una forma de resolver este problema es comprobar si el objeto que está intentando quitar es en realidad un niño del contenedor utilizando contains. Usted está haciendo esto para algunos de los objetos va a eliminar (submitButton y saveinfoButton), pero no para otros.

Trate de envolver las llamadas removeChild para txt, ldr.content y _closeButton en si las declaraciones que el uso contains Para comprobar si estas DisplayObjects están en el contenedor.

Otros consejos

Trate con:

e.currentTarget.parent.removeChild(txt);  
e.currentTarget.parent.removeChild(ldr.content)  
etc.

Prueba esto:

public function closeContent(e:MouseEvent):void { 
    removeChild(txt);
    removeChild(ldr.content);
    removeChild(_closeButton);
    container_mc.visible = false;
    statusText.text="";
    if (contains(submitButton)) {
        removeChild(submitButton);
        removeChild(saveinfoButton);
    }
}

Es posible que pueda agregar dos elementos para la eliminación de la condicional con &&:

    if (contains(submitButton && saveinfoButton)) {
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top