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