Actionscript 3 类扩展MovieClip,根据buttonstate设置alpha

Actionscript 3 类扩展MovieClip,根据buttonstate设置alpha,actionscript-3,movieclip,extends,Actionscript 3,Movieclip,Extends,我在新工作中只使用了4个月的AS3…我需要对一些设备进行大量的仿真/模拟。用于教学目的的实际设备的可视(类)工作示例 现在,我有点了解关于子类继承等的类。我喜欢认为我做得很好 问题是: 我有一个子类扩展了MovieClip。 每个Movieclip表示按钮的活动状态 我已经成功地将按钮mode设置为true,将alpha设置为0默认设置(我知道,这很神奇),但我不知道如何创建自定义属性,如buttonState 我需要能够将按钮nstate设置为1,以便alpha变为1 package {

我在新工作中只使用了4个月的AS3…我需要对一些设备进行大量的仿真/模拟。用于教学目的的实际设备的可视(类)工作示例

现在,我有点了解关于子类继承等的类。我喜欢认为我做得很好

问题是:

我有一个子类扩展了
MovieClip
。 每个
Movieclip
表示按钮的活动状态 我已经成功地将
按钮mode
设置为
true
,将
alpha
设置为
0
默认设置(我知道,这很神奇),但我不知道如何创建自定义属性,如
buttonState

我需要能够将
按钮nstate
设置为
1
,以便alpha变为
1

package  
{
import flash.display.MovieClip;

public class TwoStateButton extends MovieClip 
{
    public var buttonState:int;
    public function TwoStateButton(buttonstate) 
    {
        super();

        this.buttonMode = true;
        this.alpha = 0;
        this.buttonState = buttonState;
    }
}
}
我需要的是,当我将
按钮nstate
设置为
1
时,
alpha
也设置为
1
,反之亦然。

使用设置器功能:

private var _buttonState : int = 0;

public function set buttonState ( n : int ) : void {
    _buttonState = n;
    doStuffWith ( _buttonState ); // <= use another function, or simply set alpha here
}
此外,如果您使用字符串常量而不是int来指定按钮状态,您将获得更可读的代码和更详细的跟踪输出

    switch ( _buttonState ) {
        case 0:
            alpha = 0;
            break;
        case 1:
            alpha = 1;
            break;
        case 2:
            alpha =.5;
            break;
    }