我在一个文本框中输入一组4个值,然后使用此代码在另外4个小文本框中以分割方式显示它:
array.push(Number(t1.text));
array.push(Number(t2.text));
array.push(Number(t3.text));
array.push(Number(t4.text));
b2.addEventListener(MouseEvent.CLICK, act2);
//ACTION OF THE THE FIRST BUTTON CLICK
function act1(event:MouseEvent):Array
{
var input:String = tt.text;
array = input.split(" ");
t1.text=array[0];
t2.text=array[1];
t3.text=array[2];
t4.text=array[3];
}
但现在我需要知道如何为输入的任何动态值做同样的事情。
说我有一个文本框tt1和一个按钮b1。当我输入任何值(比如6)时,会创建这个数量的文本框(6个新文本框,名称为t0,t1 .... t5)
我有另一个文本框tt2和一个按钮b2。当我在其中输入一组值(比如10,66,33,45,2,4)时,我需要将这些值显示在那些文本框t0,t1,t2中。
这可能吗?
答案 0 :(得分:0)
此代码段将创建您的文本字段
// this will hold our new textfields
var textfields:Array = new Array();
function handleCreateFields(e:Event):void {
// assuming your textfield for the number of fields to be created
// is named tfNumfields
var count:int = parseInt(tfNumfields.text);
for( var i:int = 0; i < count; i++){
var tf:TextField = new TextField();
tf.x = 100;
tf.y = 100 + i * 30;
addChild(tf);
}
}
此代码段会将文本字段的内容拆分为多个文本字段
function handleCreateFields(e:Event):void {
// assuming your textfield for the values is named tfValues
var values:Array = tfValues.split(" ");
for( var i:int = 0; i < textfields.length && i < values.length; i++){
textfields[i].text = values[i];
}
}
答案 1 :(得分:0)
有可能:
b1.addEventListener(MouseEvent.CLICK, createTextFields);
b2.addEventListener(MouseEvent.CLICK, showValues);
var textFields:Array = [];
function createTextFields(event:MouseEvent):void
{
var quantity:uint = uint(tt1.text);
for (var i:int = 0; i < quantity; i++)
textFields.push(createTextField(i));
}
function showValues(event:MouseEvent):void
{
const SEPARATOR:String = " "; // or "," or whatsoever
var values:Array = tt2.text.split(SEPARATOR);
for (var i:int = 0; i < values.length; i++)
textFields[i].text = values[i];
}
function createTextField(i:int):TextField
{
// create the text field and add it to the stage if you want
}
我建议您检查输入的值的数量是否是您刚刚创建的文本字段的数量。