这可能很容易,但我无法得到答案。这是一个简单的数组:
我希望在点击后将信息从输入文本框分发到不同的动态文本框。按钮我没问题。
var ERLQ1:Array = ["ERLQ1", "N09°02.61 / E100°49.11", "ErawanLq"];
InputText = "ERLQ1";
//I want to display:
Txt1 = "ERLQ1" //Being first part of the array as main reference.
Txt2 = "N09°02.61 / E100°49.11" // Should be: String(ERLQ1[1])
Txt3 = "ErawanLq" // Should be: String(ERLQ1[2])
我第一次在这样的论坛上写作。如果不完美,请原谅。提前致谢。 安德烈
答案 0 :(得分:1)
如果我理解正确,一系列对象就能很好地运作。由于您有一定数量的文本字段,我假设您还有一组要在其中显示的详细信息。如果是这种情况,这个解决方案应该可以正常工作。
arr:Array = [{_name:"ERLQ1",ans1:"N09°02.61 / E100°49.11",ans2:"ErawanLq"},
{_name:"ERLQ2",ans1:"question 2 answer 1",ans2:"ques2ans1"}];
所以,我并没有真正“获得”你的应用程序,但如果它是某种测验,你会为每个问题都有一个新的数组元素,并且该元素有一个名称和两个答案。易于修改以从答案池中获取答案。现在要查找数组中包含._name == "ERLQ1"
的元素,您需要遍历所有元素并返回具有与您的搜索匹配的._name
属性的元素。这是一个示例函数:
private function matchName(arr:Array, term:String):int{
for (var i:int = 0; i < arr.length; i++){
if (arr[i]._name == term){
return i;
}
}
return -1;
}
此函数将返回匹配项的数组索引号。如果不存在匹配,则返回-1。所以你可以这样使用它(伪代码):
// on submit search{
// find the index number in the array of the element that matches the search term
var ind:int = matchName(arr, searchTerm);
// assign the textfield texts to the corresponding associated values
textBox1:text = arr[ind]._name;
textBox2:text = arr[ind].ans1;
textBox3:text = arr[ind].ans2;
}
答案 1 :(得分:0)
我可能误解了(因为我的英语),但是:
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
var ERLQ1:Array = ["ERLQ1", "N09°02.61 / E100°49.11", "ErawanLq"];
var Txt1 : TextField = new TextField();
Txt1.autoSize=TextFieldAutoSize.CENTER;
Txt1.type = TextFieldType.INPUT;
Txt1.border = true;
var Txt2 : TextField = new TextField();
Txt2.autoSize=TextFieldAutoSize.CENTER;
Txt2.type = TextFieldType.INPUT;
Txt2.border = true;
var Txt3 : TextField = new TextField();
Txt3.autoSize=TextFieldAutoSize.CENTER;
Txt3.type = TextFieldType.INPUT;
Txt3.border = true;
addChild(Txt1);
addChild(Txt2);
addChild(Txt3);
Txt1.x = 20, y =40;
Txt2.x = 180, y =40;
Txt1.x = 300, y =40;
Txt1.text = ERLQ1[0]; // is now : first part of the array as main reference (String(ERLQ1[0]).
Txt2.text = ERLQ1[1]; // is now : String(ERLQ1[1]);
Txt3.text = ERLQ1[2]; // is now : String(ERLQ1[2]);
如果我误解了您的问题,请告诉我更多关于您的期望! 最好的祝福。 尼古拉斯