2009-08-18(Tue) 13:21
【AS3.0】SimpleButtonでボタンロールオーバーを設定
SimpleButtonクラスを使用することで簡単に「ロールオーバー」や「ロールダウン」のビジュアルを簡単に設定することができます。
-
まずはSimpleButtonクラスをインポートします。
import flash.display.SimpleButton; -
次に「upState(通常時)」「overState(ロールオーバー)」「downStat(クリック)」それぞれのプロパティにDisplayObjectを設定します。
今回はLoaderで読み込んだ外部画像でロールオーバーの設定をします。var btn:SimpleButton = new SimpleButton(); //通常の状態 btn.upState = mekaButton(_imgLoader); //ロールオーバー btn.overState = mekaButton(_imgLoader_o); //クリック時 btn.hitTestState = btn.upState;
-
mekaButtoではLoaderをaddChildしているだけですが、DisplayObjectを返す必要があります。
private function mekaButton(load:Loader):Sprite { var mySprite:Sprite = new Sprite(); mySprite.addChild(load); return mySprite; } -
最終的なコードです。
package { import flash.display.SimpleButton; import flash.display.Sprite; import flash.net.URLLoader; import flash.net.URLRequest; import flash.display.Loader; public class Main extends Sprite { var _imgLoader:Loader = new Loader(); var _imgLoader_o:Loader = new Loader(); public function Main() { _imgLoader.load(new URLRequest("img/btn01.jpg")); _imgLoader_o.load(new URLRequest("img/btn01_o.jpg")); var btn:SimpleButton = new SimpleButton(); //通常の状態 btn.upState = mekaButton(_imgLoader); //ロールオーバー btn.overState = mekaButton(_imgLoader_o); //クリック時 btn.hitTestState = btn.upState; addChild(btn); } private function mekaButton(load:Loader):Sprite { var mySprite:Sprite = new Sprite(); mySprite.addChild(load); return mySprite; } } }
とりあえずボタンの変化しかしませんが、動作の設定は通常通りイベントリスナーで設定します。





TrackBack URL