2014-01-12 209 views
1

好的,我一直試圖解決這個問題,我自己在三天中的更好的一部分,沒有運氣。這裏是一個代碼示例:在另一個變量中的動作變量名稱

var text1:TextInput = new TextInput(); 
text1.text = "67" 
for (var i:int = 1; i < 49;i++) { 
    var test:int = int(["text" + i].text); 
    trace(test); 
} 

這應該輸出「67」,但它只輸出「0」。我嘗試了幾種支架放置的組合,但沒有運氣。如果我改變該行:

var test:int = int(["text" + i].text); 

這樣:

var test:int = int(["text" + i] + ".text"); 

當我檢查調試器中的值時,它表明我[ 「文字」 + i] + 「的.text」 收益率「 text1.text「,但不是字符串」67「。任何幫助將不勝感激。

感謝

韋斯

+0

你做的差不多了吧,但你需要使用'this'之前,你把你的計算機字符串方括號。一旦你這樣做,它會起作用。 – Vesper

回答

2

以及使用this關鍵字是什麼:

for (var i:int = 1; i < 49;i++) { 
    var field:TextInput = this["text" + i]; 
    var test:int = int(field ? field.text : 0); 
    trace(test); 
} 
+0

就是這樣。非常感謝! – user3186867

相關問題