2011-06-07 21 views
0

我有一個具有固定寬度和高度的VBox,並添加具有固定寬度和高度的圖像對象。我發現如果我的物體的高度超過VBox的高度,它不會顯示物體。我嘗試了validateNow(),但它不起作用。該對象被添加,但VBox只是不顯示它,所以它留下一個空白與我的其他對象相同的高度。 我的代碼是這樣的:如果VBox的高度上的所有對象的高度,我的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); 

    } 
+0

提供可運行示例。您的代碼中沒有任何內容顯然將圖像添加到VBox。它添加了一個ListElement;這不是我認識的班級。我的第一個衝動是說那個班有一個錯誤。 – JeffryHouser 2011-06-07 12:58:52

+0

剛剛修改了上面的代碼,這個想法很簡單,但是當超過VBox的高度時,它不顯示。它似乎不刷新或更新。 – James 2011-06-08 02:52:17

回答

0

就解決了這個問題。我發現只有當vbox不在容器(畫布)中時纔會發生問題,只要在將畫筆添加到畫布中之前將其添加到畫布中,就會顯示出來。

相關問題