Webデザインの勉強と製作 | あかとんぼ

フェリカテクニカルアカデミーの学習をベースに、Webについての勉強と製作の過程をまとめています。

[Flash]③クラスとは Buttonの作成

クラスとは

  • Flashに用意された関数(機能)の集まり
メソッド…クラスの関数 例:
  • MovieClip.play()▶いまのフレームで再生
  • MovieClip.stop()▶いまのフレームで停止
  • MovieClip.gotoAndPlay()▶指定フレームに移動
  • MovieClip.hitTest()▶他のムービーと接触しているか?
プロパティ…クラスの値 例:
  • MovieClip._alpha▶不透明度
  • MovieClip._currentframe▶現在のフレーム番号、時間経過で書き換わる
  • MovieClip._totalframes▶全体のフレーム数、変更不可(リードオンリー)
  • MovieClip._name▶インスタンスの名前
イベントハンドラ…イベント発生時に呼ばれる 例:
  • MovieClip.onMouseDown▶マウスが押された
  • MovieClip.onMouseUp▶マウスが離された
  • MovieClip.onMouseMove▶マウスが移動した

ビルトインクラス

Flashにさいしょから備わっているクラス。使い方は大きく3種類:

①シンボルからインスタンスを作成
var car:MovieClip;     //carの型を宣言しておく
car.play();
②newを使ってオブジェクトを作る
  • 不可視のものはnewでオブジェクトを作るとクラスの機能が使える
  • 例:Array型オブジェクトを作ったので、.sortで配列の並び替えなどができる
var level: Array = new Array( ‘写真A’, ‘写真B’, ‘写真C’, ‘写真D’ );
③いきなり使えるタイプ
  • Math,Stageなどいきなり使えるクラス
Math.floor( 12.5 );

Buttonクラス

  • ボタンは3つのフレーム「アップ」「オーバー」「ダウン」を行き来する
  • ムービークリップと機能は同じ
メソッド
  • Button.getDepth ▶ 深度を取得
代表的なプロパティ
  • Button._name ▶ インスタンス
  • Butoon._enabled ▶  アクティブかどうか(true/false)
  • Butoon._visible ▶ ボタンの表示非表示(true/false)
  • Butoon._alpha ▶ ボタンの透明度(0~100)
  • Butoon._width ▶ 幅
  • Butoon._heght ▶ 高さ
  • Butoon._x ▶ 位置x座標
  • Butoon._y ▶ 位置y座標
  • Butoon._xscale ▶ 横方向の表示%
  • Butoon._yscale ▶ 縦方向の表示%
  • Butoon._rotation ▶ 回転角度
  • Butoon._xmouse ▶ インスタンスからのマウスの相対x座標(リードオンリー)
  • Butoon._ymouse ▶ インスタンスからのマウスの相対y座標(リードオンリー)
  • Butoon._useHandCursor ▶ ボタン上で指差しマーク表示(true/false)
代表的なイベントハンドラ
  • Button.onPress ▶ ボタン上でマウスを押された
  • Button.onRelese ▶ ボタン上でマウスが離された
  • Button.onReleaseOutside ▶ ボタンが推した後外側でボタンが押された
  • Button.onRollOver ▶ マウスポインタがボタン上にきた
  • Button.onRollOut ▶ マウスポインタがボタンの外側に移動した
  • Button.onDragOut ▶ ボタンを押してからマウスがボタンの外に移動
  • Button.onDragOver ▶ ボタンを押したままマウスが外に移動してまた戻ってきた
 例題:ボタンを押すとボックスが開く
  1. ボタンの開く部分にフレームアニメを指定
  2. フレームアニメの最初と最後のフレームにstop();を記述しアニメーションをとめる
  3. ボタンとアニメーションのインスタンスをシーンに配置、インスタンス名を命名
  4. シーンにスクリプトを記述
var openButton: Button;     //インスタンス名に型を宣言する
var boxMovie: MovieClip;     

openButton.onRelease = openBox;

function openBox():Void{
     boxMovie.play();
}