2011-07-07 26 views
1
<fx:Script> 

private function showSuccessDialog(msg:String):void 
      { 
       var label:Label = new Label(); 
       label.text = msg;    
       label.width = 290; 
       label.x = 20; 
       label.y = 30; 

       var btnok:Button = new Button(); 
       btnok.label = "OK"; 
       btnok.width = 100; 
       btnok.x = 100; 
       btnok.y = label.y + 30; 

       titleWindow = new TitleWindow(); 
       titleWindow.title = "Success"; 
       titleWindow.width = 300; 

//when i add this two elements label and button both are displayed on same position 
//my label size increases dynamically so i want to add that button below that label 
//here for titleWindow i want to set layout how i can do that 

       titleWindow.addElement(label); 
       titleWindow.addElement(btnok); 

       PopUpManager.addPopUp(titleWindow, this, true); 
       PopUpManager.centerPopUp(titleWindow); 
      } 

</fx:Script> 
+1

我刪除了黑莓標籤,因爲這個問題與黑莓或RIM無關。我還編輯了這個問題,把所有的代碼放在「代碼格式」中 - 有一個大括號按鈕,您可以在將來的問題中使用它。也就是說,在您的實際問題是代碼中的註釋的一部分發布問題是不尋常的。 – JeffryHouser

回答

5

假設,因爲你使用FX,這是一個火花TitleWindow中:

titleWindow.layout = new VerticalLayout(); 

然後,您可以設置佈局屬性,如

(tw.layout as VerticalLayout).gap = 4; //sets the gap between items 
(tw.layout as VerticalLayout).paddingLeft = 10; //sets the left padding 

這等

+1

+1使用'fx'實際上並不意味着他使用的是Spark組件,只是他使用Flex 4(或更高版本)的SDK。但是,在他的代碼中使用addElement確實意味着他正在使用Spark組件。 – JeffryHouser

+0

他可以導入MX TitleWindow而不是Spark。此外,我會勸阻使用'(tw.layout作爲VerticalLayout)'。爲什麼不直接在垂直佈局中存儲局部變量,請執行屬性更改並將其添加到佈局屬性。如果不需要,我不推薦使用'as'。 –

+0

是的,這是一個很好的觀點。儘管類型實際上並沒有改變類型,但使用'as'時性能會受到影響。傳統的演員陣容會更好,或者像你所建議的那樣使用局部變體。我想我感覺有點懶,因此我將'titleWindow'縮短爲'tw' ....使用兩個字符的變量名也是一個壞主意! –

相關問題