CreateJS実践講座

イベントリスナーにデータを送る

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
ファイルを読込むときに指定したデータを、イベントリスナーに送ることができます。
講師:
05:21

字幕

このレッスンでは PreloadJs を使った時 イベントリスナーにデータを 送る方法についてご説明します イベントリスナーにデータが送られると ほしいデータをなんでもかんでも グローバル変数に置く必要がなくなります 柔軟性が増す方法です Dreamweaver で開いた この HTML ドキュメントは 特にイベントリスナーにデータを 送るという事はしていません addEventListner でファイルを ロードし終わった時のイベントに対して リスナーを設定し そのリスナーは ビットマップのオブジェクトの XY座標を調整しています そして このビットマップのオブジェクトは グローバル変数に設定されています 今現在の状況を確認しましょう ファイルメニューから ブラウザでプレビューします 画像を読み込み終わるとイベントリスナーが 呼び出され その画像のサイズに基づいて ステージの真ん中に来るように 画像を配置しています この処理はこの処理で結構です ビットマップオブジェクトを入れる変数を グローバルに宣言していると このビットマップ1つしか 扱うことができません あるいは読み込む画像が増えたら その数だけ変数を増やすという事になって これも煩わしいです できればこの変数を使わずに 済むようにした方がいいわけです そうした時に困るのは… まずここは Instance という形で ビットマップのオブジェクトが 引数で送られてきますから これをコピーしてここに入れれば グローバルの変数がなくても大丈夫です 問題になるのはここですね ここで myBitmap にアクセスしています この変数がグローバル変数が なくなってしまうと myBitmap にアクセスできません どうしたらいいかという事で この時に イベントリスナーを通じてこのビットマップの オブジェクトを送ろうという事です どうするかと言うとまず グローバル変数がなくなりましたので この myBitmap はローカルに宣言します そうするとこの中でしか myBitmap という変数は有効じゃありません けれどもここで loadFile のメソッドに 渡す引数なんですけれども これはオブジェクトで渡すこともできます オブジェクトで渡した場合 ファイルのパスは src ‟ソース” というプロパティで渡します さらにオプションで もし必要があれば 今回は必要なんですけれども Data というプロパティを 設定することができます この Data というプロパティが イベントリスナーに送られます ですからここに myBitmap を コピーして持ってきてしまいます どのように送られるかというと イベントリスナーが呼び出された時 この引数のイベントオブジェクトの 中に入ってきます そこから取り出せばいいですね ですから変数 ローカル変数として myBitmap を改めて設けて そこにはイベントオブジェクトから 取り出した― ビットマップのオブジェクトを 当てればいいです イベントオブジェクトから どのように取り出すかというと .Data ではなくて もう1つ間に入るんですが Item です Item というプロパティが設定されています その中に Data というプロパティがあり このデータの中身はイベントリスナーに 渡されるこのデータなんですけれども loadFile のメソッドで Data と指定した このオブジェクトがここに入ってきます まさにビットマップのオブジェクトを 入れたわけですから それがここに入ってきて ローカル変数に渡りますので もうこの中でビットマップオブジェクトは 参照できるようになるわけです 確認してみましょう ファイルを一旦保存して ブラウザーでプレビューします 動きは同じですね 同じという事は ローカル変数だけで扱われています 先程グローバル変数は コメントアウトしてしまいましたから グローバル変数ではなくなったという事です このレッスンでは PreloadJS で LoadQueue クラスを使う時 イベントリスナーにデータを送る方法を ご紹介しました そのためには addEventListner で fileLoad に登録したイベントリスナー ここに渡したいデータは loadFile の中で オブジェクトで読み込むファイルを指定します 読み込むファイルは src のプロパティに設定し 渡したいデータは Data という プロパティに当てます そうするとこのイベントリスナーが 呼び出された時に イベントオブジェクトの Itemの中の data というプロパティで データが取り出せます このようにすると 今回の場合グローバルに 宣言していたビットマップを入れる変数 これが必要なくなって 柔軟になったということです

CreateJS実践講座

CreateJSは、これまでFlashでしかできなかったようなインタラクティブなコンテンツや多彩なアニメーションを作ることができるJavaScriptライブラリです。このコースではチャプターごとにJavaScriptコードのサンプルをひとつずつとりあげながら、その制作方法を一歩一歩段階的に解説します。

3時間26分 (37 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 2,990
発売日:2015年07月07日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。