0

クラス内に設定されている関数を呼び出そうとしています..

どうすればそれを呼び出すことができますか?

これが私のソースです。このクラスの外から「processLogin」を呼び出したいと思います。ソースへのリンク: http://pastebin.com/aFygyXKZ

4

2 に答える 2

2

クラス main の新しいインスタンスを作成できます。

試す

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

また、AS3 のベスト プラクティスでは、クラスは大文字で始める必要があると規定されています。

また、タイムライン機能を必要としない DisplayObject クラスについては、MovieClip の代わりに Sprite を拡張する必要があります。

于 2012-09-27T21:52:24.417 に答える
0

アプリケーションで main クラスのインスタンスを 1 つだけ持つことがわかっている場合は、次のことができます。

  1. クラス main をシングルトン クラスとして実装します。この場合、 main.getInstance().processLoginまたはを使用して processLogin メソッドにアクセスできます。
  2. メイン クラスのインスタンスを含む public static 変数をメイン クラスに追加するだけです。この場合、コードは次のようになります。

    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...
    }
    

    そうすれば、を使用して processLogin 関数にアクセスできますmain.instance.processLogin()

ただし、アプリケーションがメイン クラスの複数のインスタンスを持つ可能性があるように設定されている場合は、fa が提案したように、main をインスタンス化してそのインスタンスを使用するのが最善の方法です。

于 2012-09-27T23:05:14.667 に答える