AS3:AddChild问题 - “TypeError:错误#2007:参数child必须为非null。”

时间:2010-08-10 00:02:00

标签: flex flash actionscript-3 addchild

我的以下代码给了我 TypeError:错误#2007:参数child必须是非null运行时错误。 不知道为什么......我会感激任何帮助...

        mySb = new ScrollBar(); 
        mySb.x = cont.x; //+ cont.width;
        mySb.y = cont.y;
        mySb.height = contMask.height;
        mySb.enabled = true;
        addChild(mySb); 

更新

package com.search.view

{

import com.search.events.YouTubeSearchEvent;

import fl.controls.ScrollBar;
import fl.controls.Slider;
import fl.controls.UIScrollBar;
import fl.events.ScrollEvent;
import fl.events.SliderEvent;

import flash.display.Shape;
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.geom.Rectangle;
import flash.net.URLLoader;

public class SearchResultContainer extends Sprite
{
    private var cont:videoCont;
    private var contMask:Sprite;
    private var mySb:ScrollBar;


    public function SearchResultContainer()
    {
        super();

        }
    public function get selectedVideoID():String{
        return newVideoID;
    } 

    public function createContainer(_x:Number,_y:Number, videoResult:Array):void{



    cont=new videoCont();
    cont.x=_x;
    cont.y=_y;
    addChild(cont);

    contMask = new Sprite();
    contMask.x = cont.x;
    contMask.y = cont.y;
    createMask(contMask,0x000000,452,88);

    addChild(contMask);     
    cont.mask = contMask;


    mySb = new ScrollBar(); 
            mySb.x = cont.x; //+ cont.width;
            mySb.y = cont.y;
            mySb.height = contMask.height;
            mySb.enabled = true;
            addChild(mySb); //problem code here...




    }


    private function createMask(inSrc:*,inColor:Number=0x999999,inW:Number=80,inH:Number=50):void{
        var rect:Shape=new Shape();
        rect.graphics.clear();
        rect.graphics.beginFill(inColor);
        rect.graphics.drawRect(0,0,inW,inH);
        rect.graphics.endFill();
        inSrc.addChild(rect);
    }



}

}

我在Flex环境中....

2 个答案:

答案 0 :(得分:1)

尝试在问题发生之前添加一个断点并检查mySb值,看起来它可能是null,如果它不是你必须在你正在使用的DisplayObjects或你的属性中查找空值重新分配它们......如果它是null,你可能需要在将它添加到显示列表之前为ScrollBar实例设置更多属性......

答案 1 :(得分:0)

在我的情况下,我解决了将组件添加到电影库,但在Flash CS5.5环境中工作。