「ActionScript3.0を駆使したプロフェッショナルテクニック」を謳っていながら肝心のサンプルにActionScript2.0が混在しているという困った学習本の修正版を作る企画第3弾。出版社から正式な修正版が発売されるまでやります?
今回は、ActionScript3.0で他のWebページを開く場合は URLRequest を navigateToURL() に渡して使うことと、ボタンのインスタンスに直接記入する形式のアクションは禁止というのがポイントです。
それだけではアレなので、今回はドキュメントクラスを外部ASファイルに記述する方法もおさらいしています。
基本的な手順
以下、「ソフトバンク クリエイティブの本:Flashデザインラボ -プロに学ぶ、一生枯れない永久不滅テクニック」のページで配布されているサンプルをベースに修正します。
- 新規 ActionScript 3.0 Flashファイルを作成する
- もとのサンプルファイルを開き、ライブラリから必要なものを新しいFlashファイルへコピーする
- 新しいファイルのステージ上にオブジェクトを配置して、もとのサンプルファイルと同様の状態にする
- ステージ上のすべてのボタンインスタンスに、シンボル名と同じインスタンス名をつける
- ステージ上のボタンインスタンスに直接記述されたボタンアクションすべてを削除する
- サンプルファイルと同じディレクトリにASクラスファイルを配置する
- ドキュメントクラス名「Sample」を入力する
- パブリッシュ設定で、ステージのインスタンスを自動宣言しないようにする
以下のリンクから、今回作成したActionScript 3.0ドキュメントクラスファイルをダウンロードできます。
Zip形式で圧縮されていますので、Flashファイルと同じフォルダに解凍してください。
ボタンアクションに関して
パブリッシュ時に「警告 : ActionScript 3.0 では、ボタンインスタンスまたは MovieClipインスタンスのアクションはサポートされていません。オブジェクトインスタンスのすべてのスクリプトは無視されます。」というメッセージが出たら、ボタンインスタンスに直接書かれたボタンアクションがまだどこかに残っています。
今回私が作成したASファイルを使えばFlashファイル内にはActionScriptが1行も存在しなくなるはずですので、アクションパネルから手当たり次第消してしまってもよいでしょう。
ドキュメントクラス名の設定方法
ドキュメントクラス名は、[ファイル > パブリッシュ設定 > ActionScript 3.0 設定]のダイアログの中で設定できます。

もっと簡単にプロパティインスペクタから入力することもできますが、ステージのインスタンスを自動宣言しないようにするために上記の画面を必ず開くので、ついでに設定するといいと思います。
