Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Действия при курсоре за границами флешки (http://www.flasher.ru/forum/showthread.php?t=146209)

Polimorth 01.11.2010 00:59

Действия при курсоре за границами флешки
 
Добрый вечер, комрадэс!
Возникла такая задача - через некоторое время (скажем, 500 мс) после выхода курсора за пределы флешки, начинают производиться некоторые действия. Наклепал код, однако он работает совершенно непонятным для меня образом: away = getTimer() выполняется, когда курсор находится вне флшеки. Хотя должно быть наоборот. Сижу часами втыкаю в код и немогу понять, где ошибка - помогите пожалуйста!

Код AS1/AS2:

if ( (_xmouse >= 440) or (_xmouse <= 5) or (_ymouse >= 100) or (_ymouse <= 5) )   //курсор вышел за пределы флешки
{
        if (away_flag == false)  {
                away = getTimer();
                away_flag = true;
        }
}
 
if ( (_xmouse <= 445) & (_xmouse >= 0) & (_ymouse <= 105) & (_ymouse >= 0) )  //курсор в пределах флешки
        away_flag = false;
 
if ( ( (getTimer() - away) < 500 ) & (away_flag == true) )
              действия;


Bred45 01.11.2010 14:52

Мышь у Вас покидает границы флешки?
Попробуйте потрейсить внутри первого if. Вы увидите, что проверка не срабатывает.
Например, если мышь достаточно быстро сместить влево, то значение _xmouse с большой вероятсностью окажется > 5 и условие не выполнится. Т.е. Вы не отслеживаете выход мыши за пределы экрана.


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

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