Flash Professional CC 2015 基本講座

イベントリスナーを定める

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

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
イベントに対して処理を定めるとき、イベントリスナーを使います。
講師:
08:32

字幕

このレッスンでは、EventListener という仕組みとその使い方、設定の仕方についてご説明をします。ステージにはムービークリップインスタンス、プロパティを見るとbar_mc という名前が付いていますが、それが針のような形で置いてあります。この中には関数が定義されています。確認しましょう。ダブルクリックで開きます。bar というのがシンボル名なんですけれども、その中にスクリプトのレイヤーがあって、確認します。右クリックでアクションパネルを開くとこんな関数が定義されています。rotate という名前になっていますけれども、getTimer 関数でミリ秒を調べて、1000 で割ってつまり秒数を調べて、それが seconds という変数の中に入り、そしてそれに 6 を掛けた値がこのムービークリップインスタンスの回転角として設定されます。で この rotate という関数はどこで呼び出されるかというと、シーン 1 メインタイムラインに戻るとその第 1 フレームで呼び出しをしています。bar_mc の中のrotate の呼び出し。そして 2 フレームありますのでこれは 2 フレームおきに毎回毎回呼び出されて、どういう動きになるかというと、確認しますが「制御」から「ムービープレビュー」で秒針のような動きになります。 今回はこのメインタイムラインにある関数の呼び出しのスクリプトを消してしまいます。そして呼び出しをしたいのであれば、2 フレームある必要もないのでこの 2 フレーム目は削除してしまいます。「フレームを削除」ですね。さて 関数の呼び出しが行われませんからこのままプレビューを見ても針は動かないと言うことになるんですが、この針のシンボルの中に動かすための仕組みEventListener の設定を行いたいと思います。ダブルクリックしてbar のシンボルを開き、そしてスクリプトのレイヤーのスクリプトをアクションパネルで開きます。EventLister という仕組みはですね、まず呼び出す関数があります。プログラミング用語ではメソッドという言い方をするんですが呼び出すメソッドはaddEventListener とちょっと長いですね。そしてこれは関数、関数と呼んでも間違いではないんですけど関数 あるいはメソッドという呼び方をしますが、その引数引っ張る数と書いて引数です。( )の中に与える値なんですけれどもそこにはまずイベントというものを渡します。もちろん「イベント」とカタカナで書いてはいけません。イベントの所にはしかるべき値が入ります 。 そして関数と。こういうスタイルになります。この関数というのはイベントが生じたときに呼び出す関数の名前です。今回はこの rotate というのを使いたいと思いますので、rotate をコピーしてそして関数の所にペーストします。そしてイベントが何かというと、フレームが実行される度にといっても 1 フレームしかないのでフレームの移動は起こらないんですが、実はフレームの移動が起こるタイミングで描画の更新が行われます。描画の更新、画面が書き換わることですね。それが書き換わるときに起こるイベントというものがあります。これはEvent.ENTER_FRAME と。これは描画が更新される度に、つまり 24 フレームのフレームレートであれば1 秒間に 24 回実行されます。そのイベントが起こる度にrotate を実行しなさいということです。ですからこのような書き方でこのファンクションを 1 秒間に 24 回、フレームレートは 24 の場合ですね。呼び出すことができます。ちょっと何かaddEventListener も長いしEvent.ENTER_FRAME も長いと思うかもしれません。実はこれはちょっと簡単な入れ方があります。 addEventListener と書きましたけれども、あれは関数を命令する相手があります。相手が誰なんだろうというと今スクリプトを書いているこのインスタンスになります。スクリプトを書いているこのインスタンスというのは、this というキーワードで参照できるんですけれども、this は多くの場合省略して構いません。addEventListener の場合も省略して構わないんですが、今回は省略しないと良いことがあります。this. と打つと、コードヒントというんですが、このインスタンス、ムービークリップです。ムービークリップに対して呼び出しができる関数、メソッドやプロパティの一覧が出てくるんですね。リストされます。そして addE と。add は小文字でE は大文字なんですが、addE と打つとaddEventListener がこのコードヒントの中でハイライトします。そうしたら儲けものでEnter を押せば全部打たなくても済んでしまいます。そして先程Event.ENTER_FRAMEと言いましたね。ここでもコードヒントが出てきますので下向き矢印でこうずっと辿っていくとEvent.ENTER_FRAME が見つかります。 ですからそんなに手間はかかりません。そしてここでimport flash.events.Eventと入りました。これは無くても構わないんですが自動的に入りますのでそのまま放っておいて結構です。そしてこの後にカンマで、rotate という 関数をコピーして持ってきます。コピーは Windows は Ctrl、Mac は Option キーを押しながらドラッグします。括弧閉じセミコロンと。こうしてしまうとそんなに入力するのに手間は掛かりません。では確認しましょう。まだ実はちょっと足りない所があるんですが、足りない所を確かめるために確認します。「制御」メニューから「ムービープレビュー」。エラーが出てきますね。このエラーが結構謎なんですけど「引数の数が一致していません0 が必要ですが 1 が指定されました」何のことかと言いますと、結論から言うとaddEventListener で関数を指定するとその関数には引数が自動的に内部的に渡されます。この渡されるもののことを一般にイベントオブジェクトと言うのでこの引数は何という名前をつけても結構です。EVT とか付ける方もいらっしゃるんですがこのレッスンでは分かりやすいようにフルにタイプします。 EventObject というふうに呼ばれますね。そして型指定をします。データ型の指定をするんですが、そのデータ型はこのaddEventListener の第 1 引数に指定した Event.のこの Event というclass というんですけれどもそれを指定すれば結構です。これもコードヒントが出てきますのでEve 辺りで Event がハイライトしますね。nt が省略できるだけなんですが、でも儲けものですのでこのまま Enter を押してしまいます。このエラーというのは実は、引数が渡されているんですけれども引数を受け取る準備ができていませんということですね。0 というのは引数が無いということで、1 というのは引数が1 個渡されていますということを意味しています。ではこれで確認しましょう。「制御」メニューから「プレビュー」です。メインタイムラインの呼び出しの関数は無くなりましたけれども、EventListener という形で関数を登録してあげると画面が書き変わる度にその関数が呼び出しされて実行されます。このレッスンでは、EventListener という仕組みとそのスクリプトの書き方についてご紹介しました。

Flash Professional CC 2015 基本講座

Flash ProfessionalはPCだけでなく、モバイル向けにもインタラクティブなアニメーションが作れるソフトウェアです。動画はFlash PlayerだけでなくAIRやHTML5にも書き出せます。このコースではその基本的な操作方法からグラフィックの描画やアニメーション、画像やサウンドの扱い方、そしてActionScriptなどについて説明します。

7時間21分 (78 ビデオ)
現在、カスタマーレビューはありません…
 

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

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

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