2011-03-30 78 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