Форум 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=168645)

wolhw 23.09.2011 01:06

Вопрос о мышиных событиях
 
Как сделать чтоб MOUSE_OVER/OUT срабатывал только на курентТаргет?
Код AS3:

 
front.addEventListener(MouseEvent.MOUSE_OUT,onOUT);
front.addEventListener(MouseEvent.MOUSE_OVER,onOver);
 
private function onOUT(e: MouseEvent): void
        {
                Mouse.show();
                cross.visible=false;
                trace("OUT-->"+e.target);//OUT-->[object Sprite] ---- ненужно чтоб здесь срабатывало!!!
 
                trace("OUT-->"+e.currentTarget);//OUT-->[object Front_E]
        }

все гуд пока на front недодаются новые обьекты(на них срабатывает событие OUT/OVER--а етого ненужно)

Inet_PC 23.09.2011 01:08

Код AS3:

MouseEvent.ROLL_OVER/MouseEvent.ROLL_OUT

Ну или:
Код AS3:

front.mouseChildren = false;


wolhw 23.09.2011 01:16

то что нужно благодарю

Добавлено через 4 минуты
а, аналогии для MOUSE_MOVE нет?

Добавлено через 5 минут
--------------------
Ну или:
Код AS3:

front.mouseChildren = false;

-------------------------
ну а ето для МOUSE_MOVE ))

Inet_PC 23.09.2011 01:25

Код AS3:

МOUSE_MOVE

по барабану если дети или нет

wolhw 23.09.2011 01:30

Цитата:

Сообщение от Inet_PC (Сообщение 1033889)
Код AS3:

МOUSE_MOVE

по барабану если дети или нет

иногда несрабатывал MOUSE_DOWN mouseChildren=false решил проблему

Inet_PC 23.09.2011 01:34

MOUSE_DOWN это одно, а MOUSE_MOVE - совсем другое, ну да ладно

wolhw 23.09.2011 01:36

Цитата:

Сообщение от Inet_PC (Сообщение 1033889)
Код AS3:

МOUSE_MOVE

по барабану если дети или нет

а вот и не по барабану
Код AS3:

private function onMove(e: MouseEvent): void
        {
                cross.x=mouseX;
                cross.y=mouseY;//-cross.height-5;//4tob nenalazil sross na mouse
 
                  trace("OUT-->"+e.target);
                trace("OUT-->"+e.currentTarget);
//OUT-->[object Front_E]
//OUT-->[object Front_E]
//OUT-->[object Cross] ---- !!!!!!
//OUT-->[object Front_E]
//OUT-->[object Front_E]
//OUT-->[object Front_E]
                e.updateAfterEvent();
        }

Добавлено через 6 минут
а вот почему несрабатывал MOUSE_DOWN так и неясно, сейчас все работает но ради интереса и на будущее...
было так:
Код AS3:

                front.addEventListener(MouseEvent.MOUSE_DOWN,onDown);
                front.addEventListener(MouseEvent.MOUSE_MOVE,onMove);
                front.addEventListener(MouseEvent.MOUSE_OUT,onOUT);
                front.addEventListener(MouseEvent.MOUSE_OVER,onOver);
                front.addEventListener(MouseEvent.MOUSE_UP,onUP);
 
 
private function onMove(e: MouseEvent): void
        {
                cross.x=mouseX;
                cross.y=mouseY;//-cross.height-5;//4tob nenalazil sross na mouse
 
                e.updateAfterEvent();
        }

несрабатывал иногда маус довн..

Добавлено через 10 минут
когда быстро двигать мышкой MouseX/Y-у "перекрывал дорогу" cross

Добавлено через 21 минуту
да все разобрался в чем была проблемка, неактуально, спасибо за ответы


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

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