flash与字符串:字符串与属性

有时候,我们想通过设置一个DisplayObject 类是属性值,只是需要通过点来引用即可。有时候,通过字符串也可以引用显示对象里面的属性值。
    下面举个例子 。
                         例如我有一个MovieClip 对象,已经创建在舞台上,我们用mc表示他的对象。
                         设置mc.x=100,那么你看到的,mc在坐标100的位置了。
  

                    如果写成mc["x"]=100 同样可以看到mc在x=100的位置上,其实as3是有这两种的写法引用属性。
            通过这个特性,我们可以定义一个简单的函数,函数如下:
           function setValue(propoty:String,value:Number):void
        {  
            mc[propoty]=value;
        }
       调用   setValue("x",100);//这样子可以实现了设置mc的x属性值为100了。
  

    我们做一个小实验。在舞台上,我们创建两个输入文本,通过输入文本值,我们可以控制小球在舞台上位置产生变化。
  

     



  小球命为mc,两个文本分别为x_txt,y_txt ,文本监听了Change 事件,当发生改变的时候执行监听的方法。
  

  mc.x=200;

function setValue(propoty:String,value:Number):void

mc[propoty]=value;
}

x_txt.addEventListener(Event.CHANGE,onChange);
y_txt.addEventListener(Event.CHANGE,onChange);

function onChange(event:Event):void
{
if(event.currentTarget==x_txt)
{
  setValue("x",Number(x_txt.text))
}
else
{
  setValue("y",Number(y_txt.text))
}
  
}
输入文本可以控制其他属性,这里就不一一介绍参考游戏http://www.shengshiyouxi.com。 通过利用这个特性可以来制作输入一些文本来控制位置的工具。

posted @ 2013-07-03 21:30  爱生活,爱编程  阅读(293)  评论(0编辑  收藏  举报