Flash 希望使用舞台上的按钮而不是箭头键移动MovieClip

Flash 希望使用舞台上的按钮而不是箭头键移动MovieClip,flash,actionscript-3,button,Flash,Actionscript 3,Button,为了移动MC,使用箭头键,我使用了以下方法,并且效果良好: var定时器:定时器; var-direct:字符串; initStage() 我试图将其转换为使用我在舞台上的按钮:向上、向下、向左、向右移动MC框,但无法理解。有人能帮我把这个换成现金吗? 提前感谢您可能提供的任何帮助。 安妮我会这样做: btnDown.addEventListener(MouseEvent.MOUSE_DOWN, onDown) stage.addEventListener(MouseEvent.MOUSE_UP

为了移动MC,使用箭头键,我使用了以下方法,并且效果良好: var定时器:定时器; var-direct:字符串; initStage()

我试图将其转换为使用我在舞台上的按钮:向上、向下、向左、向右移动MC框,但无法理解。有人能帮我把这个换成现金吗? 提前感谢您可能提供的任何帮助。
安妮

我会这样做:

btnDown.addEventListener(MouseEvent.MOUSE_DOWN, onDown)
stage.addEventListener(MouseEvent.MOUSE_UP, onUp)
btnUp.addEventListener(MouseEvent.MOUSE_DOWN, onDown)
stage.addEventListener(MouseEvent.MOUSE_UP, onUp)
btnLeft.addEventListener(MouseEvent.MOUSE_DOWN, onDown)
stage.addEventListener(MouseEvent.MOUSE_UP, onUp)
btnRight.addEventListener(MouseEvent.MOUSE_DOWN, onDown)
stage.addEventListener(MouseEvent.MOUSE_UP, onUp)

var pressedState:int = 0;

var myTimer:Timer = new Timer(10);
myTimer.addEventListener(TimerEvent.TIMER, onTimerTick);

function onDown(e:MouseEvent)
{
    myTimer.start();
    switch(e.currentTarget)
    {
        case btnDown:
        pressedState = 1;
        break;
        case btnUp:
        pressedState = 2;
        break;
        case btnLeft:
        pressedState = 3;
        break;
        case btnRight:
        pressedState = 4;
        break;
    }
}

function onUp(e:MouseEvent)
{
    myTimer.stop();
    pressedState = 0
}

function onTimerTick(e:TimerEvent)
{
    switch(pressedState)
    {
        case 1:
        mc.y++
        break;
        case 2:
        mc.y--;
        break;
        case 3:
        mc.x--;
        break;
        case 4:
        mc.x++;
        break;
    }
}
btnDown.addEventListener(MouseEvent.MOUSE_DOWN, onDown)
stage.addEventListener(MouseEvent.MOUSE_UP, onUp)
btnUp.addEventListener(MouseEvent.MOUSE_DOWN, onDown)
stage.addEventListener(MouseEvent.MOUSE_UP, onUp)
btnLeft.addEventListener(MouseEvent.MOUSE_DOWN, onDown)
stage.addEventListener(MouseEvent.MOUSE_UP, onUp)
btnRight.addEventListener(MouseEvent.MOUSE_DOWN, onDown)
stage.addEventListener(MouseEvent.MOUSE_UP, onUp)

var pressedState:int = 0;

var myTimer:Timer = new Timer(10);
myTimer.addEventListener(TimerEvent.TIMER, onTimerTick);

function onDown(e:MouseEvent)
{
    myTimer.start();
    switch(e.currentTarget)
    {
        case btnDown:
        pressedState = 1;
        break;
        case btnUp:
        pressedState = 2;
        break;
        case btnLeft:
        pressedState = 3;
        break;
        case btnRight:
        pressedState = 4;
        break;
    }
}

function onUp(e:MouseEvent)
{
    myTimer.stop();
    pressedState = 0
}

function onTimerTick(e:TimerEvent)
{
    switch(pressedState)
    {
        case 1:
        mc.y++
        break;
        case 2:
        mc.y--;
        break;
        case 3:
        mc.x--;
        break;
        case 4:
        mc.x++;
        break;
    }
}