ユーザー定義関数の指定と呼び出し

"ユーザー定義関数" とは、アプリケーションで使用するために独自に作成する関数で、事前に定義された機能を実行するビルトインクラス内の関数とは異なります。ユーザー定義関数を作成するには、独自に名前を付け、関数ブロック内にステートメントを追加します。名前付き関数、匿名関数、コールバック関数などの関数の記述方法は、前のセクションで説明されています。関数の命名法については、関数の命名を参照してください。関数の使用方法については、Flash での関数の使用を参照してください。

ターゲットパスを使用すると、ロードされた SWF ファイルのタイムラインなど、あらゆるタイムラインの関数を、どのタイムラインからも呼び出すことができます。関数を呼び出すには、必要であれば関数名へのターゲットパスを指定した上で、必要なパラメータをカッコ内で渡します。ユーザー定義関数のシンタックスには、いくつかの形式があります。次のコードでは、パスを使用して initialize() 関数を呼び出します。この関数は現在のタイムライン上で定義されたもので、パラメータは必要ありません。

this.initialize();

次の例では、相対パスを使用して list() 関数を呼び出します。この関数は、ムービークリップ functionsClip 内で定義されたものです。

this._parent.functionsClip.list(6);

名前付き関数の記述方法については、名前付き関数の記述を参照してください。パラメータの詳細については、関数へのパラメータの受け渡しを参照してください。

また、独自の名前付き関数を定義することもできます。たとえば、次の名前付き関数 helloWorld() はユーザー定義関数です。

function helloWorld() {
    trace("Hello world!");
};

次の例では、FLA ファイル内のユーザー定義関数の使用方法を示します。

単純なユーザー定義関数を作成して呼び出すには :

  1. 新しい Flash ドキュメントを作成し、udf.fla という名前で保存します。
  2. メインタイムラインのフレーム 1 に次の ActionScript を追加します。
    function traceHello(name:String):Void {
        trace("hello, " + name + "!");
    }
    traceHello("world"); // hello, world!
    

    上記のコードでは、traceHello() というユーザー定義関数が作成されます。この関数は、1 つの引数 name を取り、グリーティングメッセージをトレース出力します。このユーザー定義関数を呼び出すには、1 つのストリング値を指定し、関数定義と同じタイムラインから traceHello を呼び出します。

  3. [制御]-[ムービープレビュー] を選択して Flash ドキュメントをテストします。

名前付き関数の詳細については、名前付き関数の記述を参照してください。クラスには多数のユーザー定義関数が含まれています。クラスファイル内での関数の記述方法については、Flash での関数の使用を参照してください。また、クラスのセクションクラスファイルのメソッドとプロパティの使用パブリック、プライベート、および静的なメソッドとプロパティ (メンバー) について、およびクラスメンバーについても参照してください。


 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00000755.html