如果所有对象的高度超过VBox的高度,我的VBox不会添加子项

时间:2011-06-07 12:53:15

标签: flex actionscript-3 flash-builder

我有一个固定宽度和高度的VBox,我添加了固定宽度和高度的图像对象。我发现如果我的物体的高度超过VBox的高度,它就不会显示物体。我试过validateNow(),但它不起作用。添加了对象,但VBox只是不显示它,因此它留下一个与我的其他对象具有相同高度的空白。 我的代码就像:

这是添加的对象类:

public class ListElement extends Canvas
{
[Embed(source="/assets/friendlist/btn2.png")]private var namereckImg:Class;
[Embed(source="/assets/friendlist/btn2.png")]private var joinbtnImg:Class;

public var nameReck:Image;
public var joinBtnIcon:Image;
public var Name:Label;

        public function ListElement(id:String,name:String)
    {

        ID=id;

        this.width=223;
        this.height=30;

        Name=new Label();

        nameReck=new Image();
        nameReck.source=namereckImg;
        nameReck.x=30;
        nameReck.y=6;
        this.addChild(nameReck);

         Name.text=name;
        Name.x=30;Name.y=6;
        this.addChild(Name);


        joinBtnIcon=new Image();
        joinBtnIcon.source=joinbtnImg;
        joinBtnIcon.x=150;
        joinBtnIcon.y=33;
        this.addChild(joinBtnIcon);

        //this.validateNow();
    }
}

添加对象的功能就像:`

public function addFriend():void{
        var id:String="MY_ID";
var name:String="MY_NAME";
var le:ListElement=new ListElement(id,name);
        /*le.addEventListener(MouseEvent.CLICK,onClickElement);
        le.addEventListener(FLEvent.OPENGIFTOPTION, onDpOpenGiftOption);
        le.addEventListener(FLEvent.SENDMSG, onDpSendMsg);
        le.addEventListener(LobbyEvent.SHOWCONFIRMBOX, onDpShowConfirmBox);
        le.addEventListener(FLEvent.OPENSTA, onDpOpenSta);
        le.addEventListener(FLEvent.CLOSESTA, onDpCloseSta);*/

        vbox.addChild(le);

    }

1 个答案:

答案 0 :(得分:0)

刚刚解决了问题。我发现问题只发生在vbox不在容器(画布)中,一旦我将它添加到画布中,然后将子项添加到它中,它就显示了。