AS3,Flash - 在类中调用函数?

时间:2012-09-27 21:46:45

标签: actionscript-3 flash

我正在尝试调用一个在类中设置的函数。

我怎么称呼它?

这是我的来源,我想从这个课外调用'processLogin'。 链接到来源:http://pastebin.com/aFygyXKZ

2 个答案:

答案 0 :(得分:2)

您可以创建班级主要的新实例。

尝试

var m:main = new main();
m.processLogin();

此外,AS3最佳实践声明类应以大写字母开头。

对于不需要时间轴功能的DisplayObject类,您还应该扩展Sprite而不是MovieClip。

答案 1 :(得分:0)

如果您知道在应用程序中只有一个类main的实例,那么您可以做的是:

  1. 将类main实现为singleton class,在这种情况下,您可以 可以使用访问processLogin方法 main.getInstance().processLogin
  2. 只需添加一个公共静态 变量到包含main实例的主类 类。在这种情况下,您的代码看起来像:

    package actions {
    import flash.display.MovieClip;
    import flash.events.*;
    import flash.net.*;
    import flash.text.*;
    
    public static var instance:main;
    
    public function main(){
    instance = this;
    }
    
    //The rest of your main class code...
    }
    

    这样,您可以使用main.instance.processLogin()

  3. 访问您的processLogin函数

    但是,如果您的应用程序设置为可能有多个主类的实例,那么最好的方法是实例化main并使用该实例,如f-a建议的那样。