我需要在我的應用程序中使用TextArea,因爲它支持TLF框架並允許用戶編輯文本。如何顯示Spark TextArea組件作爲MovieClip的子項
我的問題是,這個TextArea必須是一個MovieClip的孩子,但我不能讓它工作,TextArea不顯示。
這裏是我的代碼示例:
var mc:UIMovieClip = new UIMovieClip();
mc.graphics.clear();
mc.graphics.lineStyle(2, 0, 1);
mc.graphics.drawRect(0, 0, 400, 300);
mc.width = 400;
mc.height = 300;
var textArea:TextArea = new TextArea();
textArea.width = 350;
textArea.height = 250;
textArea.text = "Hello world!";
mc.addChild(textArea);
myCanvas.rawChildren.addChild(mc);
TextArea組件是正確的時候我直接添加文本區域作爲畫布,即一個孩子,當我更換線顯示
mc.addChild(textArea);
以下內容
mainCanvas.addChild(mc);
TextArea需要成爲MovieCl的子項的原因IP是我正在使用一個使用影片剪輯的外部庫。 如果我使用UIMovieClip而不是MovieClip,該技巧也不起作用。
有人可以解釋爲什麼TextArea不會在這種情況下顯示? 是否有任何解決方法來獲得所需的結果? (我嘗試使用UIComponent作爲中間的孩子,但沒有成功)
假設您的意思是一個Flex mx.controls.TextArea,它不能被添加到UIMovieClip。也許你可以詳細闡述你的最終目標,包括如何使用'MovieClip'調用這個外部庫。另外,你使用的是什麼版本的Flex? Flex 3'mx:Canvas'可以被Flex 4的'SpriteVisualElement'替代。 –
我正在談論一個Flex'spark.components.TextArea'組件,我正在使用Flex 4.5。這個問題與'Canvas'無關,因爲當'TextArea'被直接添加爲子節點時它工作正常。 使用的庫處理可以由用戶生成的形狀,只要它們是「MovieClip」的實例即可。在這種情況下,我想傳遞一個包含可編輯文本區域的形狀,並處理從右向左書寫的文本。這就是爲什麼我想用屬性'direction'使用Spark'TextArea'類的原因。希望它可以幫助! – duTr
'spark.components.TextArea'不能添加到UIMovieClip。 UIMovieClip類實現了Flash組件像常規Flex組件一樣使用所需的接口。它不會將Flex組件添加爲UIMovieClip的子項。 Spark的'SpriteVisualElement'是Halo的'mx:Canvas'的不錯替代品。如果您試圖從Flash Pro合併控件,則可以使用'fl.controls.TextArea'。 –