Мой VBox не добавляет дочерний элемент, если высота всех объектов превышает высоту VBox - PullRequest
0 голосов
/ 07 июня 2011

У меня есть 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 голосов
/ 09 июня 2011

только что решил проблему.Я обнаружил, что проблема возникает только в том случае, если vbox не находится в контейнере (холсте), и как только я добавляю его в холст, перед добавлением в него дочернего элемента, он показывает.

...