尝试使用输入文本更改变量

时间:2012-10-17 21:50:51

标签: actionscript-3 flash variables

我正在尝试输入一个输入文本字段来更改我已设置的变量,然后制作一堆我为变量设置的影片剪辑。

这是我想要更改的代码

    var blue:MovieClip = new Blue  ;

如果可能的话,我需要对输入字段中的内容进行蓝色更改

2 个答案:

答案 0 :(得分:0)

据我所知,你不能根据字符串(即文本字段的值)创建新的类名。

您最初必须创建课程:

var blue:MovieClip = new Blue();
var green:MovieClip = new Green();
...

然后用开关说:

switch(player1.text){
case 'blue' : 
  //load blue mc
  break;
case 'green' :
  // load green ms
  break;
}

这里最大的问题是文本输入可以带来任何价值。使用具有预定义值的一系列单选按钮可能会更好。然后那些你的开关。

答案 1 :(得分:0)

您可以使用getDefinitionByName()基于字符串创建类的实例。

示例代码:

function loadClip(string:String):MovieClip
{
    var type:Class = getDefinitionByName(string) as Class;
    var mc:MovieClip = new type();

    return mc;
}

然后您可以使用player1.text的值来创建您设置的不同类型的MovieClip:

try
{
    var colorMc:MovieClip = loadClip(player.text);
}
catch(e:ReferenceError)
{
    trace(e);
}