2012-01-09 113 views
1

我有一個名爲Moneytxt的文本字段,我想要它,所以當你點擊一個盒子時它增加了200和somtimes增加了100(我也希望它加起來用數字值的例子:如果它增加100,它有200它等於300而不是200100)。我也有penniestxt那裏有時它增加了30和somtimes它增加了40在as3中隨機添加文本到動態文本字段

這是代碼(框獲取添加不包含或的addEventListener)

public function boxclick(event:MouseEvent):void { 
      var _box:Box=event.currentTarget as Box; 
      logtxt.appendText(" You collected the box"); 
      Moneytxt.random.appendText("100") 
      Moneytxt.random.appendText("200") 
      penniestxt.random.appendText("40") 


      boxAmount--; 

      removeChild(_box); 
     } 
+0

此問題缺少很多詳細信息。首先,什麼是Moneytxt?其次,什麼是最簡單的文字?第三,boxAmount是什麼?請提供您的class/mxml的簡化版本,其中包含這些詳細信息。 – 2012-01-09 01:01:44

回答

1

的AppendText通過方法不正是它says--它將文本附加到文本字段中的文本末尾 - 這就是爲什麼您要獲得「200100」而不是「300」。

要將這些數字加起來,您需要將存儲的金額保存爲數字或int。

var money:int = 0; 
money += 100; 
money += 200; 
Moneytxt.text = String(money); 

請注意,當您將值賦給文本字段文本時,您可能不得不將值轉換爲字符串。

要做隨機值,可以使用Math.random()。它返回一個介於0和1之間的數字。您可以使用該值確定是否添加100或200.

var money:int = 0; 
public function boxclick(event:MouseEvent):void { 
    var randVal:Number = Math.random(); 
    if(randVal >= 0.5){ 
     money += 100; 
    } else { 
     money += 200; 
    } 

    Moneytxt.text = String(money); 
} 
+0

我將如何改變可能性,以及如何添加額外的數字,如300. – thor625 2012-01-09 02:01:33

+0

通過檢查'randVal'中的不同範圍。在我的例子中,我正在檢查隨機數是大於還是等於0.5,所以你有50/50的機會。如果你想得到75%的機會,請檢查randVal是否大於0.25。 – Cadin 2012-01-09 02:30:54

+0

謝謝這有助於很多 – thor625 2012-01-09 20:03:44