2011-03-30 77 views
0

即時通訊新的閃光 - 動作3.0。我創建了一個文本,我可以通過執行txt.text =「something」來設置一個字符串。我的問題是,我想顯示一個整數而不是一個字符串,這怎麼可能?flash actionscript 3.0如何顯示整數?

謝謝。

回答

3

當需要將某些內容轉換爲字符串時,ActionScript通常會非常寬容,並且它通常會爲您執行此操作。這應該工作:

var a:int = 1; 
txt.text = a; // Now that I think of it, I forget if AS3 has issues with this. 
       // AS2 does not 

如果串聯爲一個字符串,但是,我建議嚴格鑄造,因爲這將避免意外楠:

var a:int = 1; 
var str:String = "foo"; 
txt.text = str + String(a); // now "foo1" 

還要記住,如果添加到一個文本框的結束文本(而不是分配它),請使用appendText。

0
var myNumber:Number = 2; 
txt.text = myNumber.valueOf(); //or txt.text = new String(2); 
+1

首先,int不是數字。其次,使用toString()而不是valueOf - 將所有東西都作爲重新構造String的toString,有時valueOf返回非String值。第三,使用String構造函數是faux pas。 – cwallenpoole 2011-03-30 17:13:18

+0

沒有真正想過它是一個int還是一個數字。關於valueOf()的提示Thx。不能提供任何有關的信息。你能解釋爲什麼字符串構造函數的使用是錯誤的嗎?謝謝 – aveic 2011-03-30 17:21:19

0

聽起來像你想要使用NumberFormatter。這裏的Adobe's example讓你開始。

+0

你不需要flex框架就可以在文本框中顯示一個整數。 Cwallenpoole的答案簡單得多。 – frankhermes 2011-03-30 17:21:01

+0

@frankhermes,我完全同意。我以爲OP想要將他的字符串(例如「12345」)格式化爲一個數字。我也贊同cwallenpoole的回答。 – 2011-03-30 17:32:43