Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Подмена координат события мыши? (http://www.flasher.ru/forum/showthread.php?t=145721)

Troglodit 17.10.2010 18:06

Подмена координат события мыши?
 
Задача такова - есть мувик с кнопками на нем. Мы водим над ним мышью. можно ли каким либо способом подменить координаты событий мыши (например зеркально отразить), чтобы кнопки реагировали не на реальныю мышь а на измененную.

Очевидный способ - заменить кнопки мувиками и самому обрабатывать для них переключение кадров и диспетчить для них события липовой мыши. Но этот способ не подходит потому что кнопки должны остаться именно SimpleButton-ами (есть очень большой кусок работы для которого нужно сделать просто фальшивую мышь).

КорДум 17.10.2010 18:21

Эм...
Код AS3:

var _mouseX = -stage.mouseX;

Не совсем понятно, что вам надо.

Azo 17.10.2010 20:11

да, не понятно... но уверен что все просто

leofit 18.10.2010 12:37

Возможно
Код AS3:

dispatchEvent(MouseEvent....);

?

Troglodit 18.10.2010 16:32

)) Я понимаю что вопрос свучит по нубски однако он таковым не является)

нужно перехватить событие перемещения мыши на как можно более ранней стадии и изменить в нем координаты мыши а затем "отпустить" дальше. Диспетчить свое событие нельзя, так как simpleButton-ы не показывают стейт ОВЕР при простом диспетче на них события MOUSE_OVER.
Задачу пожно решить заменой кнопок мувиками или манипуляциями с кнопками из скрипта с последующим диспетчем на них событий мыши с фальшивими координатами но гораздо более просто было бы просто подменить координаты настоящего события мыши.

Надеюсь в этот раз объяснил понятно

Jewelz 18.10.2010 16:46

а как их поменять если они рид онли? =)

cleptoman 18.10.2010 16:48

а если сместить ручками в кнопке hitTestState на сколько вам нужно и не париться? )

dimarik 18.10.2010 16:49

Пропатчить флеш-плеер.

Troglodit 18.10.2010 16:49

да вот именно что рид онли. Если бы все было просто зачем бы я на форуме спрашивал ? ) Так что ? Может есть идеи как сделать, или это совсем не реально?

Добавлено через 3 минуты
Цитата:

а если сместить ручками в кнопке hitTestState на сколько вам нужно и не париться? )
Кстати это мысль! Здесь конечно возможна куча подводных камней вроде закрывания этих стейтов другими объектами, но это уже чтото)

dimarik 18.10.2010 16:55

а если ловить в посреднике, модифицировать как нужно и диспатчить евент экстендед маусеэвент? и заоверрайдить ему localX или что там вы юзаете?


Часовой пояс GMT +4, время: 01:59.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.