Search code examples
flashactionscript-3buttontogglesimplebutton

Flash toggle button


I need a button in Flash/AS3 that toggles between on and off. So I was glad to see that the Button class has the toggle property that lets me have that behavior. I was less happy to see that what I get when I make something a "button" in the Flash file is an instance of SimpleButton class, which does not have that option.

Is there a way to either get a Button instance from the .fla, or get the SimpleButton to behave as a toggle?


Solution

  • Here's how I coded my way around this:

    private buttonState:Boolean;
    
    private function buttonToggle(button:SimpleButton){
        var currDown:DisplayObject = button.downState;
        button.downState = button.upState;
        button.upState = currDown;
        buttonState = !buttonState;
    }
    
    private function clickEvent(e:MouseEvent){
        buttonToggle(e.target);
    }
    

    I didn't put the code in the clickEvent function, because this allows me to toggle the button from elsewhere in the code.