2010-07-14 36 views

回答

4

一般情況下,當前位置,寬度和高度都存儲在:

textfield.x 
textfield.y 
textfield.width 
textfield.height 

雖然它可能沒有設置,直到它的定位的東西,是在連接到一定階段內點。否則,它還沒有弄清楚它有多大,以防它需要擠入一個較小的外部物體或某物。

你可以當它添加到舞臺上與

textfield.addEventListener(mx.events.Event.ADDED_TO_STAGE, handleAddedToStage); 
... 
protected function handleAddedToStage(event:Event):void 
{ 
    ... 

更新陷阱:

用戶想要的文字大小。我相信答案是:

textfield.getTextFormat().size 

如果有可選的參數傳遞給getTextFormat()挑領域內的文本範圍。

+0

按大小我指的是字體大小。不是TextBox的實際大小。我想知道這是甚至可能與textFields將有兩個不同的字體大小... – MrB 2010-07-14 22:00:18

+0

已更新。讓我知道這是如何工作的,我沒有太多搞砸了。 – eruciform 2010-07-14 22:11:16

+0

謝謝getTextFormat()是我一直在尋找的! – MrB 2010-07-19 17:31:21

2

如果您將多個文本格式應用於TextField,那麼您可能真的很幸運,因爲AS3將開始使用HTML表示TextField。

您可以通過書面形式在HTML得到:

yourTextField.htmlText 

這會給你這樣的:

<P ALIGN="LEFT"> 
    <FONT FACE="Georgia" SIZE="12" COLOR="#666666" LETTERSPACING="0" KERNING="0"> 
     Smaller text. 
    </FONT> 
    <FONT FACE="Georgia" SIZE="16" COLOR="#666666" LETTERSPACING="0" KERNING="0"> 
     Bigger text. 
    </FONT> 
</P> 

然後,您可以解析這個字符串,並搜索大小屬性。在上面的例子中,它們是12和16像素。

如果你只是將一個單一的文本格式,你可以繼續使用eruciform的建議:

yourTextField.getTextFormat().size