[AS3/CS5] コードヒントとimport宣言 [Edit]

Flash Professional CS5では、ActionScript 3.0でデータ型の指定をするとimport宣言が自動的に加えられるようになりました(図001)。クラスを定義する場合には、手間が省けて助かります。けれど、フレームアクションでは、ありがたみがわかりにくいかもしれません。

図001■データ型を指定するとimport宣言が加わる
図001■データ型を指定するとimport宣言が加わる(上図)
図001■データ型を指定するとimport宣言が加わる(下図)

フレームアクションにはimportステートメントを書かなくても、多くの場合エラーにはなりません。「これは、Flashのタイムラインには、デフォルトで必要なクラスが自動的にimportされるためです」(「import指示子」[訳者注*1]参照 )。

もっとも、importされるのは、基本的にパッケージ flashのクラスです。Flash CS5から加わったクラスには、flash以外のパッケージも少なくありません。たとえば、TLFテキストを扱うのは、fl.text.TLFTextFieldクラスです。また、その書式を設定するには、flashx.textLayout.formats.TextLayoutFormatクラスを用います。これらのクラスには、import宣言が必要になります。

さらにもうひとつ注意することがあります。Flash CS5では、パッケージのクラスはimportしないとコードヒントが出ません。コードヒントを使いたいなら、MovieClipクラスであってもimport宣言が必要なのです。importステートメントが自動的に加えられることによって、これまでと変わらずコードヒントが表示されるのです。

ただし、フレームアクションでは、thisに続けてドット(.)を打てば、MovieClipクラスのコードヒントが表れます(図002)。コードヒントを出すために、わざわざMovieClipクラスをimportする必要はありません。

図002■コメントを使ってthisキーワードにコードヒントを出す
FF1005221_003_2.gif

静的なプロパティやメソッドにアクセスするときは、とくに変数宣言も型指定もしないでしょう。イベントリスナーを登録するときのイベント定数がそうです。けれど、コードヒントが必要なら、クラスをimportしなければなりません。そのようなとき、仮の変数を型指定してしまえば、そのクラスがimportされます。そうすれば、イベント定数もコードヒントで表示されます。

図003■仮の変数を型指定すればクラスがimportされてコードヒントは表示される
FF1005221_004.gif

[2010年8月25日追記] 本稿は当初以下の説明を加えていました。しかし、フレームアクションではthis参照でコードヒントが表示されることを確認したため、本文の記述を改めました。このテクニックを使う場面はほとんどないでしょう。

もっとも、つねに型指定をするとはかぎりません。第1に、スクリプトを書いているタイムラインを参照する場合です。thisキーワードに型指定はできません。この場合には、つぎのようにコメントを使ってコードヒントが出せます(図002。「コードヒントの活用」2「thisに対してコードヒントを表示する」参照)。

// クラス 識別子;

コメント

この記事にコメントを書く

記事に対するテクニカルな質問はご遠慮ください(利用規約)。

その他の記事