flash mx2004

flash mx2004授業メモ

  • mx2004から、ビヘイビアが使用できるようになった。
  • ムービークリップコンテナ
  • 基準点左上。
  • 外部swfファイルを読み込むと、サイズに合わせて読み込まれる。
  • 半透明のサブメニュー(ドロップダウンボックス)裏側の画像などが見える。


●ユニット7

  • wt7-1
  • ルーラーガイドの非表示
    • 表示−ガイド−ガイドの表示のチェックを外す。
  • ターゲットパスを挿入
  • スクリプト
    • this:自分自身を指す
    • アクションのタイプにより変わる
    • フレームアクションでは、メインのタイムライン上のsubmenuというムービークリップということになる。
    • this.submenu_mc._alpha=70;
  • このメインタイムライン上の、サブメニューというムービークリップ
  • メソッド
  • テキストフィールドをインスタンスとして使用したいときの接尾辞→_txt
  • シンタックスチェック → 構文チェック
  • 自動フォーマット:スペースやセミコロンを自動で入れてくれる。
  • flashにおけるアルファー
    • swf:デバイスフォントだと、モーショントイーンアルファーは表現できなくなる。
    • バイスフォントを使用しない。
    • フォントを2回分解してシェイプにして使う。
    • 回転、拡大縮小はできない。
    • マスクの効果も反映されない。
  • アクションスクリプトを書く場所、実行させる時を考えて、スクリプトを書く。
  • イベントハンドラメソッド
    • どこにどんなスクリプトが書いてあるかわからないと、修正などしにくい。今後、なるべく、フレームにスクリプトを書くようになるだろう。
  1. gotoアクションによる切り替え(同一タイムライン上)
  2. ロードムービーアクションで切り替え(外部swf,jpgファイルなどを読み込みする)
  3. getURLアクション(メソッド)で切り替える(外部htmlファイルに切り替え)
  • ロードバリアブルズ?
  • フレームにラベルを付ける(名前を付ける)
  • タイムライン上に旗が立つ。名前が書かれる。

などの場合、専用のレイヤーをつくる。

  • ショートカットキー:F5、F6、F7 shiftF5、shiftF6
  • ステージ上でレイヤーをダブルクリックすると、ステージ上でインスタンスの編集ができる。
  • グラフィックシンボルの自動再生→ループ再生、一回再生、シングルフレーム(指定フレームまで再生)
  • ムービークリップシンボルは、自動でループ再生される。
  • モーショントウイーン
  • ボタンインスタンスは、スクリプトかかれていなくても、ポインタが指先型に変わる。
  • ロールオーバーでルートチェンジ
  • ボタンオブジェクト(クラス)
  • ボタンに設定。


ボタンにロールオーバーで、赤い字の道を表示する route*のフレームラベルのフレームに移動する。

ロールアウトで、元の色の道路を表示するために、1フレームに戻る。

on (rollOver) {

//Movieclip GotoAndStop Behavior
this.gotoAndStop("route3");
//End Behavior

}
on (rollOut) {

//Movieclip GotoAndStop Behavior
this.gotoAndStop("route0");
//End Behavior

}


on(マウスイベント)←イベントハンドラ  {

// ← コメントを書くためにはこれを使う。  //
this.原則自分自身であるが、ボタンインスタンスの場合のthis.は、ボタンインスタンスが配置されているタイムラインをさす。


アクションスクリプトを記述したタイムラインをさす。


ムービークリップアクションにおけるthis.-タイムライン、プロパティをさす。
実行されるとき、2つのイベントが使える。

ムービークリップなんだけど、ボタンとして使える。
ロールオーバーだの、ロールアウトだの設定できる。

標準のイベント:ムービークリップイベントonclipevent

go back ボタン



on (release) {

// GoTo Previous Screen behavior
var screen = null;
var target = this;
while*1
{
if(target instanceof mx.screens.Screen)
{
screen = target;
}
else
{
target = target._parent;
}
}
if(screen instanceof mx.screens.Slide)
{
screen.rootSlide.currentSlide.gotoPreviousSlide();
}
// End GoTo Previous Screen behavior


// GoTo Previous Screen behavior
var screen = null;
var target = this;
while*2
{
if(target instanceof mx.screens.Screen)
{
screen = target;
}
else
{
target = target._parent;
}
}
if(screen instanceof mx.screens.Slide)
{
screen.rootSlide.currentSlide.gotoPreviousSlide();
}
// End GoTo Previous Screen behavior
}

*1:screen == null) && (target != undefined) && (target != null

*2:screen == null) && (target != undefined) && (target != null