FLASH備忘録

以前のエントリの結婚式FLASHアプリケーションを絶賛作成中なのでメモ。


・ドキュメントクラス
 せっかくプログラマFlashをやるんだから、タイムライン上にシコシコActionScriptを書いていくのらしくない。ってことで、ドキュメントクラス方式を採用。FlashIDE上でドキュメントクラスとしてActionScriptのクラス名を指定することでJavaのエントリポイントのような形なる。


FLASH上の画像をActionScriptから扱う
 画像を選択 - シンボル化(ムービークリップ化) - ActionScriptに書き出し - クラス名等を指定
 これでActionScriptからMovieClipクラスのサブクラスとして扱える。
 IDE上の画像は既に一つのインスタンスとされ、ActionScriptからインスタンス化、addChild等しなくてもIDE上でつけたインスタンス名のpublicフィールドがあれば既に追加される。
 この段階ではMovieClipのサブクラスといっても名前だけで、機能はMovieClipとなんら変わらない。拡張するためにはそのクラス名のActionScriptクラスを作成してフィールドやメソッドを追加する。


・MovieClipでタイムラインを制御する
 MovieClipまたはそのサブクラスはタイムラインのフレームやラベルを表現するフィールドや制御するメソッドを持っているためタイムラインで作成したムービーを自由に制御することができる。何フレームに飛ぶとか現在のフレームのラベルを取得するとかね。


・KeybordEvent
KeybordEventがぜんぜん拾えなかった…ある一定のキーしか認識してくれない。
 なぜかと思ってずっと頭を悩ませていたが、どーやらFlashIDE上でムービープレビューしていたからみたいだ。
 キーを押すとFlashIDE側にフォーカスが行ってしまう。コンパイルされたswfファイルを実行するとうまく拾えた。


やっぱりFLASHIDEが絡むとぜんぜん勝手がちがうので難しい…。
でもソースを書いてるとActionScriptはやっぱりJavaライクなのでやりやすい。
イベントの概念とかもSwingやってるからあんまり違和感ない。

ただFlexBuider(でソース書いてんだが)のエディタが貧弱すぎる…
コンパイルエラーとかもぜんぜん出してくれないし、実際にコンパイルするまでエラーがわからないことが多い。
(設定でなんとかなるんだろうか…その辺も調査が必要)
どーせ、FlexBuilderもそのうち試用期間終わっちゃうし…FlashDevelopでもためしてみるかね…。