作者justaID (快乐崇拜)
看板Flash
标题[问题] AS3有能回传画面上某物件的变数名称&汇出类别的API吗?
时间Fri Aug 6 18:52:27 2010
自己翻阅API找不到,不知道是真的没有还是在下眼拙 囧>
特来请教先进:
我现在画面上有一个物件
变数名称是"a1"
该物件在元件库的汇出类别叫"AAA"
然後我对a1物件加上事件监听:
a1.addEventListener(MouseEvent.CLICK, fc);
function fc(e:MouseEvent){
trace(@@@);
trace(###);
}
我想在@@@的地方,印出事件对象(e.target)的变数名称=a1
在###的地方,印出事件对象(e.target)的类别名称=AAA
请问有没有相关的函式可用?
我现在的作法,是另外呼叫一个函式来判别类别名称并回传String
如:
function fc(e:MouseEvent){
trace(wc(e.target));
}
function wc(x:Object):String{
if(x is AAA) return "AAA";
else if(x is BBB) return "BBB";
else return "error";
}
但当需要判别的类别种类一多,比如说有10几种汇出类别("AAA" "BBB"..."GGG")
一长串的if判断,觉得好像对效能很伤
又觉得这应该是一个很常用的功能,照理会有可用的函式
此外印出变数名称这点,我完全没辄 Orz
请问AS3对於以上这两个功能,有没有相对的函式可用?
(叙述有点拢长,感谢耐心看完)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.170.241.242
※ 编辑: justaID 来自: 118.170.241.242 (08/06 18:53)
1F:→ aquarianboy:你要的是把物件内容dump出来的效果吗? 08/06 19:27
2F:→ justaID:不太了解dump的意思,但我想应该不是 08/06 23:29
3F:→ justaID:我想要的是能知道画面上某个物件的变数名称和其类别名称 08/06 23:30
4F:→ aquarianboy:你要的是typeof() 吗? 08/07 00:52
5F:推 cjcat2266:describeType() ? 08/07 01:03
6F:→ anami:trace(e.currentTarget.name); 实体变数名称 08/07 14:35
7F:→ anami:trace(getQualifiedClassName(e.currentTarget)); 类别名称 08/07 14:36