ActionScriptクラスファイルをフォルダに入れるときの注意(1/31セミナーのフォロー)

2009年2月 2日 10:05

先日のセミナーに参加された皆さま、お疲れさまでした。
最後あたりにあったご質問のカスタムクラスのことで補足します。

クラスをフォルダに入れて呼び出す時の注意

MovieClipクラスを拡張・継承させて、MovieClipPlusというクラスを自作、元々無かったメソッドmoves()を作り、外部asファイルをflaファイルと同階層ではなく、下位階層など、フォルダでまとめる際に注意しなければいけない点です。
サンプルファイルはこちらからダウンロードしてください。

同階層にclassesというフォルダを作りました、その中にASファイルを入れると、まず今回のようなサンプルの場合、フレームアクションの最初に以下の様に書きます。

import classes.MovieClipPlus;

import の後に、フォルダ名、フォルダが続く場合はさらにドットでつなげます。
詳しく言いますと、最後にそのフォルダ内のクラス名(クラス名とファイル名は一緒ですので)を書く、ただし、フォルダ内を全て参照したい場合、例えば

import classes.*

のように * (アスタリスク)を付けて複数行書かなくても済むやり方もある、ということも付け加えておきます、ワイルドカードのようなものと言えましょうか。

さらに、リンケージされたMovieClipを使う場合、リンケージを設定する画面でクラス名を指定するところがありますが、通常はここにMovieClipPlusと入力すると、外部ASファイルと、リンケージされたシンボルが、合わさって動作する形になるのですが、ここで注意が必要です。

フォルダにクラスファイルを入れておく場合、こちらも階層ごと、入力しないといけません。
結構ハマりやすかったので、気をつけましょう。
↓↓

リンケージの注意
MovieClipPlusだけだと参照出来ません、(同階層に存在しないので)

リンケージの注意
classes.MovieClipPlus と、入力、フォルダ名はここでもドットでつなぐ。

さらに、asファイルのクラス内の最初で

package classes{

というように、packageの後に半角スペース、そしてフォルダ名と入れます。

これでOKです。

まとめると、以下の3つ。

・フレームアクションには最初に import classes.MovieClipPlus;
・クラスファイルには package classes{
・リンケージパネル内でクラス命名は  classes.MovieClipPlus

と、いずれにせよ、フォルダ名を無視してしまうとエラーが起きたり、予想もつかない動作をしたりします。



フレームアクション↓ 「classes」というフォルダに入っているASクラス、「MovieClipPlus.as」内のソース↓

デザイナーさんのためのActionScript3.0講座リスト

Author
秋葉秀樹

秋葉秀樹(アキバヒデキ)

DTP上がりのデザイナー
ノンプログラマー!
フリーランスのデザイナー。
IllustratorやPhotoshopを初代バージョンから使っているという事がウリ。
クリエイター育成機関などでお世話になり、先生として講義をしていたりします。

siteInformation

web creatorsに寄稿しています。 web creators 2009年10月号 web creators 2009年10月号 web creators 2009年10月号「Flashの動き表現アイデア」特集の131ページに『画像をタイル状に分割』というタイトルの記事を執筆しました。

web creators 2009年6月号の94~ 95ページに秋葉秀樹が執筆した記事「商品カテゴリを意識してビジュアルを強調する」が掲載されました。
テーマは「MovableType 4.xデザインカスタマイズを極める(前編)」です。

web creators 2009年2月号の147ページに記事を書きました。
テーマは「独学で始めるFlash作成講座」です。

info@akibahideki.com

powered by MovableType4
Powered by MovableType 4

セミナー情報|秋葉秀樹
カテゴリ