Forked from: 9re's マウスイベントを使ったボタン diff:2 forked from: マウスイベントを使ったボタン hacker_ni1un.. forked:0favorite:0lines:45license : MIT License modified : 2010-02-16 10:19:30 Embed Tweet // forked from 9re's マウスイベントを使ったボタン package { import flash.display.Sprite; import flash.events.MouseEvent; public class MouseClick extends Sprite { private var _button:MyButton; public function MouseClick() { // ボタンのインスタンスを生成 _button = new MyButton(); _button.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); _button.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); // 表示リストに追加 addChild(_button); // ボタンの位置を設定 _button.x = 182; _button.y = 150; } private function onMouseOver(e:MouseEvent):void { _button.over(); } private function onMouseOut(e:MouseEvent):void { _button.out(); } } } import flash.display.Sprite; class MyButton extends Sprite { private var _over:Sprite; public function MyButton () { // 描画色を#666666に設定 graphics.beginFill(0x333333); // 角丸の長方形を描画 graphics.drawRoundRect(0, 0, 100, 22, 15); graphics.endFill(); // マウス・オーバー時に表示させるSpriteのインスタンスを生成 _over = new Sprite(); // 描画色を赤#ff0000に設定 _over.graphics.beginFill(0xff0000); // 角丸の長方形を描画 _over.graphics.drawRoundRect(0, 0, 100, 22, 15); _over.graphics.endFill(); // 非表示に設定 _over.visible = false; // 表示リストに追加 addChild(_over); // マウス・カーソルを手のカーソルに変える buttonMode = true; } public function over():void { // マウス・オーバー時の画像を表示 _over.visible = true; } public function out():void { // マウス・オーバー時の画像を非表示 _over.visible = false; } } Code Fullscreen Preview Fullscreen visible MouseEvent.MOUSE_OUT buttonMode MouseEvent.MOUSE_OVER addEventListener MouseEvent addChild Sprite