flash 中如何得到按钮实例名?

来源:百度知道 编辑:UC知道 时间:2024/09/28 14:01:04
在按钮的动作中加入:
on (release) {
trace(this._name)
}
输出却是空白,为什么没有实例名?要获取实例名该如何修改?
我的as是2.0的。谢谢!
都没明白我的意思,我的按钮是动态创建的,因为有很多个按钮共用这个事件,所以不可能按照2楼的方法,而且2楼的方法也很矛盾,都知道实例名了,那我还求什么实例名,我现在就是想在不知道当前点击的是哪个按钮的情况下,从按钮的点击事件中得知该按钮的实例名。

你这是返回主时间轴的名字属性,正确的写法是:
on(release) {
trace(myan._name);
}
myan是你按钮的实例名称。
晕,你自己没写明白还说我没明白···。
按钮是无法实现的,把你的按钮换成影片剪辑,可以一样设置3帧。
按钮的三个事件用gotoAndStop就行了,然后你就可以
on (release) {
trace(this._name)
}
这时的this才是指的影片剪辑,按钮上写this是指_parent,懂否?
影片剪辑是可以用按钮事件的。

按钮的实例名称可以通过name属性取到

比如按钮为button,代码如下:

var ins_name:String = button.name;

ins_name变量就是button的实例名

如果是自动添加的元件,可以通过以下两种方法获取实例名:

1)可以通过遍历子对象得到所有子元件的实例名,代码如下:

var i:int = 0;
var child:DisplayObject;
// 遍历所有的子对象并输出实例名
while(i < this.numChildren)
{
    child = this.getChildAt(i);
    // 输出元件的实例名
    trace(child.name);
    i++;
}

2)如果是想输出被点击对象的实例名,可以在点击事件的捕获阶段获取实例名,代码如下:

// 注册捕