練習問題:押すと色が変わるボタンその2

by toburau
♥0 | Line 63 | Modified 2010-04-01 03:05:11 | MIT License
play

ActionScript3 source code

/**
 * Copyright toburau ( http://wonderfl.net/user/toburau )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/jCUC
 */

package {
    import flash.display.Sprite;
    import flash.display.BlendMode;
    import flash.events.MouseEvent;
    import flash.text.TextField;

    public class practice4 extends Sprite {
        
        public var buttonRed:Circle = new Circle(0xff0000);
        public var buttonBlue:Circle = new Circle(0x0000ff);
        
        public function practice4() {
            var button:Button = new Button();
            button.buttonMode = true;
            button.addEventListener(MouseEvent.MOUSE_OVER, mouseOver);
            button.addEventListener(MouseEvent.MOUSE_OUT, mouseOut);
            button.addEventListener(MouseEvent.CLICK,mouseClick);
            addChild(button);
            
            buttonRed.x = 232;
            buttonRed.y = 232;
            buttonRed.visible = false;
            buttonRed.buttonMode = true;
            buttonRed.addEventListener(MouseEvent.CLICK,mouseClick);
            button.addChild(buttonRed);
            
            buttonBlue.x = 232;
            buttonBlue.y = 232;
            buttonBlue.visible = false;
            buttonBlue.buttonMode = true;
            buttonBlue.addEventListener(MouseEvent.CLICK,mouseClick);
            button.addChild(buttonBlue);
        }

        private function mouseOver(e:MouseEvent):void {
            buttonRed.visible = true;
            if(buttonBlue.visible == true) {
                buttonBlue.blendMode = BlendMode.ADD;
            }
        }
        private function mouseOut(e:MouseEvent):void {
            buttonRed.visible = false;
        }
        
        private function mouseClick(e:MouseEvent):void {
            if(buttonBlue.visible == true) {
                buttonBlue.visible = false;
                buttonBlue.blendMode = BlendMode.NORMAL;
            }
            else {
                buttonBlue.visible = true;
            }
        }
    } 
}

import flash.display.Sprite;

class Button extends Sprite {
    public function Button() {
        graphics.beginFill(0x333333);
        graphics.drawRoundRect(132,132,200,200,15);
        graphics.endFill();
    }
}

class Circle extends Sprite {
    public function Circle(color:int ) {
        graphics.beginFill(color);
        graphics.drawCircle(0, 0, 50);
        graphics.endFill();
    }
}