2011-11-10 52 views
0

我想在flex中創建自定義textinput組件。該組件由一個背景矩形(spark.primitive.Rect)和一個包含文本的矩形內部組成。Flex中的自定義TextInput和可變大小

我的問題是,我希望我的組件可以像我想要的那樣大小。例如,如果我想創建一個的TextInput大小爲200/100我寫:

<s:TextInput x="10" y="10" width="200" height="100" skinClass="Component.MyTextInputSkin"/> 

而且我只有寬度和高度改變,如果我要創建具有不同大小的另一個的TextInput。

我的皮膚MXML包含兩個矩形,但我想這樣做:

<s:Rect width="{this.width}" height="{this.height}" ..... 

和另一個(一個將包含文本)

<s:Rect width="{this.width * 0.80}" height="{this.height * 0.80}" ..... 

的問題是,flashbuilder在我的兩個「Rect」行上顯示不兼容的錯誤消息。當我啓動我的應用程序時,沒有顯示任何內容。

是否有另一種方法可以做我想做的事?

回答

1

在這種情況下,您通常會根據SDK中的默認TextInputSkin創建一個皮膚,並修改所需的部分。

Since skins are very big I packaged the sample application in FXP.

+0

非常感謝你,但我不明白udpatedisplay的首要目的,提交功能。我明白他們做了什麼,但爲什麼要改變他們。我們不能僅僅創建一個適應性的皮膚而不使用這些功能嗎? – TheFrenchGuy

+0

這只是一個*默認*皮膚,只是稍作改動。隨意從中刪除任何AS代碼,看看它是否適合你。 –

+0

好的,謝謝它幫了我很多。 – TheFrenchGuy

相關問題