访问类成员

时间:2011-02-24 14:23:22

标签: actionscript-3 actionscript

我有一个班级ABC

class ABC
{
    var l:Label=new Label();
    var m:MovieClip=new MovieClip();
}

给定一个类ABC的实例,例如obj

var obj:ABC=new ABC();

我需要同时访问obj.mobj.l。假设m有一个eventlistener fl_listen,它会在鼠标点击时触发:

function fl_listen(event:MouseEvent):void
{ 
   var k=event.target;
}

在此处理程序中,我可以访问MovieClip类的ABC。但是,我的要求也要求访问Label类中的ABC对象。我将非常感谢任何帮助,我对使用ActionScript很陌生。

1 个答案:

答案 0 :(得分:1)

我认为你应该重新考虑你的架构。 你为什么要用m来处理这个事件?只需监听ABC内部的事件并处理事件,您就可以访问标签和动画片段。如果你需要在movieclip实例m中执行一些逻辑,那么只处理你的mc。

使用伪代码:

public class ABC
{

    var l:Label=new Label();
    var m:MovieClip=new MovieClip();

    function ABC(){
       m.addEventListener(MouseEvent.X,_handleX );
    }

    private function _handleX(e:Event):void{
       //you have access to both. Do what you need:
       m.alpha = 0.4;
       l.text = 'Changed';
    }


}