2011-06-20 53 views
0

在我的孩子之一,在圖像上的任何影響我有以下代碼:的Flex 3:「Y」不具有

<mx:Canvas id="projWrapper" x="{parentApplication.oneDay * startOffset}" width="{parentApplication.oneDay * numDays}" height="26" backgroundColor="{conflictBG}" borderColor="#000000" borderSides="bottom top left right" borderStyle="solid" borderThickness="1"> 
    <mx:HBox verticalGap="0"> 
     <mx:Image id="expandBlockLeft" source="images/addRed.png" y="5" /> 
     <mx:Text id="sNameShow" text="{sName}" /> 
    </mx:HBox> 
</mx:Canvas> 

圖像,這是一個小的加號(「+」)的標誌,從畫布的座標0,0開始。我需要它從0,5開始......但是,無論我將y值更改爲何,加號都不會移動。

我知道這看起來很簡單,而且我確定它是這樣,但我無法弄清楚我的生活。

如果有人能在這裏解釋我的小問題,這將不勝感激。

回答

2

嘗試使用:

<mx:Canvas id="projWrapper" x="{parentApplication.oneDay * startOffset}" width="{parentApplication.oneDay * numDays}" height="26" backgroundColor="{conflictBG}" borderColor="#000000" borderSides="bottom top left right" borderStyle="solid" borderThickness="1"> 
    <mx:HBox verticalGap="0" paddingTop="5"> 
     <mx:Image id="expandBlockLeft" source="images/addRed.png" /> 
     <mx:Text id="sNameShow" text="{sName}" /> 
    </mx:HBox> 
</mx:Canvas> 

問題是HBox佈局容器不支持自定義精確的定位與用於定位本身(由設計)xy和響應。您可以使用間隙,襯墊和對齊來進行一些自定義調整或使用絕對定位的容器,如Canvas

+0

但是,這不會也移動文本元素?文本顯示在我需要的地方,而不是圖像。我可能會刪除HBox,並手動放置東西。謝謝(你的)信息! – Brds

+0

如果您確實需要動態佈局,但想要在不更改填充的情況下移動圖像,可以在圖像周圍創建一個vbox,並在圖像上方添加一個5像素的「。 –

+0

如果您只是想將圖片向下移動5px,您可以將其包裝到一個新Box中並使Box.paddingTop = 5 –