Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   MOUSE_LEAVE не работает с начала... (http://www.flasher.ru/forum/showthread.php?t=146359)

alexes 05.11.2010 14:13

MOUSE_LEAVE не работает с начала...
 
Здравствуйте. Понадобилось знать, находится мышь на флешке, или нет. Но проблема в том что событие MOUSE_LEAVE не работает на первоначальном этапе загрузки свф-а.
Т.е. как только я нажимаю CTR+Enter мне надо знать, в пределах ли флешки мышь. Как это можно узнать?

КорДум 05.11.2010 14:47

Ну, сразу же подписать стейдж на mouseLeave...

alexes 05.11.2010 15:34

Вот слушатель:
Код AS3:

stage.addEventListener(Event.MOUSE_LEAVE, mouse_leave);

Вот обработчик:
Код AS3:

private function mouse_leave(e:Event):void {
    trace('Hello World!');
}

Но с самого начала они не работают. Если потом навожу мышь и убираю, тогда работает. А с самого начала нет.

alatar 05.11.2010 16:58

Подпишитесь на MOUSE_MOVE.

КорДум 05.11.2010 18:11

Вы хотите сразу узнать, находится ли мышь за пределами флешки, не помещая на нее указатель вообще? То есть, загрузилась флешка, но курсор блуждал по другим элементам страницы в это время, верно?

alexes 06.11.2010 00:04

КорДум Да, именно это.

f.g.programmer 06.11.2010 01:49

Цитата:

Т.е. как только я нажимаю CTR+Enter мне надо знать, в пределах ли флешки мышь. Как это можно узнать?
Проверить координаты мыши.

КорДум 06.11.2010 10:16

Забавно, но координаты выдаются правильно, относительно флешки. Мышь за пределами в правом верхнем углу - координаты (550, 400) - дефолт. Слева вверху - (0, 0). Нет, здесь нужен другой способ или же надо проверять по граничащим значениям, все равно же один раз проверяется.

Hidest 07.11.2010 04:13

Видимо, отображает ближайшие координаты на stage к курсору, хоть тот и за пределами... Может, пожертвовать одним-двумя рядами пикселов в этом случае (не часто курсор попадет практически ровно на границу ролика) и смотреть, что курсор ближе к центру, чем на самой границе? В общем, похоже на то, что предложил КорДум.


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

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