F-site セミナー「初心者DAY!3 Step Script と事例祭り」
2008/06/02 22:23 - AS3.0
2008年5月31日(土)行ってきました国立オリンピック記念青少年総合センターへ。
お目当てはもちろん demo1「3 stepで始めるAS3のスクリプト」バーイ野中先生。
わたくしプログラミングは我流です。
書籍を読んで他人様のソースを読んで、コードを書いてコンパイルして…… そんな感じで成り上がってきました。
まぁ無手勝流と言っちゃえばカッコいいですが、自分にしか通じない俺ローカルなコーディングが多々あるんではないかと危惧しております。
長年の努力の甲斐あって、初心者の域は脱したんではないかと密かに自惚れてはおりますが、やはり碩学に師事して基礎から学びたいものであるなぁとは、常々、考えておりました。
そんな中ラッキーなことにうってつけのセミナーが F-site 様により催されていたので、参加してきたですよ。
講座内容は、スクリプトによる以下の三つの話。
- クラスのインスタンス化
- ライブラリアイテムのインスタンス化
- 外部データのインスタンス化
new や addChild、addEventListener、Loader、URLLoader といったクラスやメソッド等の使用と、コーディングはビジネスレターと同じで定型文であるいったことでした。
私的にはクリアしているレベルの内容で、再確認ということでお話しを伺いましたが、一つだけ「ええっ! そうだったの?」と驚愕の事実を教えていただきましたですよ。
ライブラリアイテムのうち jpeg などの画像ファイルをスクリプトでステージに配置するときの話。
例えば、リンケージプロパティで BitmapInLib というクラス名をつけたとすると、ステージ上にインスタンスを配置するためには、以下のようなコードを書きますね。
var bmd:BitmapData = new BitmapInLib( 240, 180 ); var bm:Bitmap = new Bitmap( bmd ); addChild( bm );
ここで問題になるのは1行目の右辺の ( ) 内の二つの数値です。
BitmapData コンストラクタの第1引数 width と第2引数 height は省略不可能な引数です。だから私は、上記のような場合、ライブラリアイテムとして登録した画像ファイルの幅と高さのピクセル値を入れるもんだとばかり思ってました。
ちなみに私は上記のようにライブラリアイテムをスクリプトでステージ上に配置するというようなコーディングは基本的にしないんですが、知識として、こういう書き方をするということは押さえていました。
ところが今回の講座でお聞きしたところによると、( ) の数値は何でも良いんだとか。 マジかよ!
講座では ( 0, 0 ) でした。
何でも、このようにライブラリからスクリプトで呼び出す場合、( ) 内の数値は参照されていないんですって。 だから上記のように ( ) 内に数値を二つ入れないとコンパイルエラーになるのは、仕様上の欠陥と呼んでもよいのではないか、ということでした。
やっぱり聞かなきゃ分からないことってたくさんありますね。 勉強になりました。 雨の中参加して良かったですよ。