2013-04-10 31 views
0

我正在處理我的項目,需要在Flash中創建溫度計組件(組件將顯示當前的溫度值)。所以我決定用雪碧(flash.display.Sprite)成分的包裝和創建這些孩子:Flash,actionscript,flex,將mx.controls。*組件添加到flash.display.Sprite

  • flash.display.Bitmap,BitmapData - 要背景,溫度計圖像
  • API元素flash.text.TextField - 文本(與單元溫度)
  • flash.display.Shape的電流值 - 溫度計酒吧

接着我需要添加一些閃爍文本(缺少值),並最好是使用mx.contols.Label(或火花標籤)成分(支持AnimateColor)。但是,當我將新的Label組件添加到包裝中時,添加的標籤不會顯示。所以我想知道是否有可能將mx.controls.*組件添加到Sprite或推薦使用什麼解決方案。

回答

0

必須在Flex框架的上下文中使用mx組件。如果將Flex組件添加到非Flex容器(例如Sprite),那麼您在Flex上下文之外使用該組件,並且Flex Framework類(如LayoutManager)不會知道調用這樣的方法作爲measure(),createChildren(),updateDisplayList()或commitProperties()。

如果這是你想要做的;那麼沒有出現的原因是因爲組件沒有經過它的Flex Component LifeCycle;從而沒有什麼可顯示的。

如果您在Flash Pro中構建某些內容,或者在Flash Builder中使用僅包含ActionScript的項目,那麼您可能未使用Flex Framework,並且我也不希望組件能夠正常工作。但是,如果是這種情況,我希望你會看到編譯錯誤,因爲缺少依賴關係。

相關問題