SimpleButton – AS
Flashで使うボタンの話。
ゲームを作る時なんかはボタンがたくさん必要だったりします。
(ボタンが多すぎるゲームは避けるべきで、なにか工夫が必要だとは思いますが;)
ステージ内にボタンを置きたい時は、MovieClipをボタンとして扱ったり、FlashのUIコンポーネントパネルのやつをそのまま使ったりしてました。CS3だとfl.controls.Buttonクラスで制御できます。
あと、地味だけど知ってると便利なflash.display.SimpleButtonクラスでもボタンを作れます。
var btn:SimpleButton = new SimpleButton();
btn.upState = drawCircle();
btn.overState = drawCircle(0xFFFF00);
btn.downState = drawCircle(0x0000FF, 30);
btn.hitTestState = btn.upState;
this.addChild(btn);
/* ボタンの外観、ここでは円の形 */
private function drawCircle(color:uint = 0x00FF00, radius:int = 20):Shape {
var shape:Shape = new Shape();
shape.graphics.beginFill(color);
shape.graphics.drawCircle(0, 0, radius);
return shape;
}
アップ、オーバー、ダウン、ヒットテスト時の外観もそれぞれ指定できます。
継承は、
SimpleButton→InteractiveObject→DisplayObject→EventDispatcher→Object
となっていて、シンプルというだけありSpriteよりも一階層継承が浅くなっています。
簡単なデモでボタンが必要な場合は、SimpleButtonクラスでさくっと作ると手軽です。
Tags: actionscript, flash


Comments
No comments so far.