0

ステージ上のボタンをクリックしてムービークリップを移動する方法を知っている人はいますか? 少しずつ動かすことはできますが、常に動かしたいのです。現在、私はこれを持っています:

down.addEventListener(MouseEvent.MOUSE_DOWN, arrowDown);

function arrowDown(event:MouseEvent):void
{
bottomArrow.y += 1;
}
4

1 に答える 1

1

KeyboardEventまず、の代わりに sをリッスンする必要がありMouseEventます。次に、によってディスパッチされるイベントをリッスンする必要があると思いますstage

Event.ENTER_FRAMEイベントを使用した例を次に示します。スプライトの移動速度をより適切に制御したい場合は、代わりにタイマーを使用することをお勧めします。

この例は、下矢印が押されたときに機能しますがKeyboard.DOWN、任意のキーで変更できます。

stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);
stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp);

function onKeyDown(event:KeyboardEvent):void
{
    if (event.keyCode == Keyboard.DOWN)
    {
        stage.addEventListener(Event.ENTER_FRAME, onEnterFrame);
    }
}

function onKeyUp(event:KeyboardEvent):void
{
    if (event.keyCode == Keyboard.DOWN)
    {
        stage.removeEventListener(Event.ENTER_FRAME, onEnterFrame);
    }
}

function onEnterFrame(event:Event):void
{
    bottomArrow.y += 1;
}
于 2013-03-20T21:00:04.623 に答える