как захватить щелчок мышью в Actionscript 3.0 - PullRequest
0 голосов
/ 02 апреля 2009

Как мне зафиксировать положение щелчка мышью пользователя в моем окне Flash, используя Actionscript 3.0?

Ответы [ 4 ]

3 голосов
/ 03 апреля 2009

Рон ДеВера близок, но я бы не использовал встроенную функцию, и объект, передаваемый в функцию, не Event, а MouseEvent.

stage.addEventListener(MouseEvent.CLICK, _onStageMouseDown);

function _onStageMouseDown(e:MouseEvent):void
{
    trace(e);
}

//traces
//[MouseEvent type="click" bubbles=true cancelable=false eventPhase=2 localX=96 localY=96 stageX=96 stageY=96 relatedObject=null ctrlKey=false altKey=false shiftKey=false buttonDown=false delta=0]

Все свойства в выводе выше доступны через объект, который передается методу прослушивателя событий, _onStageMouseDown (e: MouseEvent); Отсюда следующее

function _onStageMouseDown(e:MouseEvent):void
{
    trace(e.localX);
    trace(e.stageX);
    //Note that the above two traces are identical as we are listening to the stage for our MouseEvent.
}
1 голос
/ 11 апреля 2009

Они хорошо это объяснили, но вот полный код, чтобы проиллюстрировать его немного подробнее:

addEventListener(MouseEvent.CLICK, clickHandler);

function clickHandler(event: MouseEvent) : void
{
    // these are the x and y relative to the object
    var localMouseX: Number = event.localX;
    var localMouseY: Number = event.localY;

    // these are the x and y relative to the whole stage
    var stageMouseX: Number = event.stageX;
    var stageMouseY: Number = event.stageY;
}
0 голосов
/ 02 апреля 2009

Вы можете запросить мышь XX и mouseY любого DisplayObject в любое время.

0 голосов
/ 02 апреля 2009

Местоположение определяется каким контекстом? Вся страница? Один или несколько конкретных интерактивных элементов управления?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...