Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 07.01.2006, 05:13
Elodreid вне форума Посмотреть профиль Отправить личное сообщение для Elodreid Найти все сообщения от Elodreid
  № 1  
Ответить с цитированием
Elodreid
[+1.1 08.01.2006]

Регистрация: Jan 2006
Сообщений: 66
По умолчанию [ Переименовано ] Отслеживание момента, когда курсор покинул ролик

Делаю сайт, вверх флеш всегда, а низ бывает и html страница, вот в чем вопрос:

Как сделать, что бы если мышка уходит за границу флеш kursor_mc становился _visible = false?

Старый 07.01.2006, 05:38
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 2  
Ответить с цитированием
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Чаще всего кладут сверху кнопку, но самым беспроигрышным решением будет в JavaScript отслеживать координаты курсора и когда он не над роликом -- давать команду через SetVariable.

Проблема состоит в том, что когда курсор покидает Сцену, координаты _xmouse, _ymouse остаются теми, что были в последний момент, когда курсор над ней был.

Чтобы не использовать лишний раз жрущий (много или мало -- но жрущий) ресурсы onEnterFrame, делаем объект со свойством, которое вешается динамически, а значит, мы можем написать свой сеттер для этого объекта (как вариант -- делать класс, у которого уже есть сеттер, но тебе про классы думать рано).

Делается это примерно так:
Код:
_root.set__xmouse = function(val)
{
	"Новое значение X: " + val
}

_root.get__xmouse = function(val){return null}

_root.set__ymouse = function(val)
{
	trace("Новое значение Y: " + val);
}

_root.get__ymouse = function(val){return null}

_root.addProperty("__xmouse", _root.get__xmouse, _root.set__xmouse);
_root.addProperty("__ymouse", _root.get__ymouse, _root.set__ymouse);
Руту динамически вешаются свойства __xmouse, __ymouse. Теперь мы можем изменять их с помощью SetVariable и у нас отработают соответствующие функции set__ymouse, set__xmouse.

Getter/Setter -- функции, вызываемые при обращении к свойству "на чтение" (типа, var a = obj.property взовет getter для property) и "на изменение" (obj.property = "foo" вызовет setter для property).

Чтобы ты не сошел с ума от обилия новой информации предлагаю 2 варианта:

1. Почитать про геттеры и сеттеры, JS код завтра напишу (уже засыпаю, Антаресы тоже иногда спят).
2. Если согласишься почитать по-английски, могу дать ссылки на туторы для первого метода с кнопкой, но он, как я говорил, не идеален.


Последний раз редактировалось Antares; 07.01.2006 в 05:41.
Старый 07.01.2006, 17:32
Elodreid вне форума Посмотреть профиль Отправить личное сообщение для Elodreid Найти все сообщения от Elodreid
  № 3  
Ответить с цитированием
Elodreid
[+1.1 08.01.2006]

Регистрация: Jan 2006
Сообщений: 66
Ну я сейчас и сделал, что-то похожее на кнопку, только АСом
Просто координатами (по 5px взял), но если очень резко провести она не всегда в эти 5 пх попадает, а больше будет не красиво :-\

А вот с JS интересней, спасибо попробую как с катка приду

Старый 07.01.2006, 17:38
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 4  
Ответить с цитированием
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Ну так вот с JS способ беспроигрышный

Старый 07.01.2006, 17:59
ravenco вне форума Посмотреть профиль Отправить личное сообщение для ravenco Найти все сообщения от ravenco
  № 5  
Ответить с цитированием
ravenco
[+ 1.1 30.08.2005]
 
Аватар для ravenco

Регистрация: Mar 2002
Адрес: не скажу
Сообщений: 440
Отправить сообщение для ravenco с помощью ICQ
или вот готовый исходник
лови
__________________
не надо читать, это подпись(все-таки прочли, да?)

Старый 08.01.2006, 03:31
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 6  
Ответить с цитированием
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Не нравится -- не ешь. У тебя есть еще один шанс испытать мое терпение. Второе нарушение за 3 прочитанных мною треда.

Старый 08.01.2006, 06:11
Elodreid вне форума Посмотреть профиль Отправить личное сообщение для Elodreid Найти все сообщения от Elodreid
  № 7  
Ответить с цитированием
Elodreid
[+1.1 08.01.2006]

Регистрация: Jan 2006
Сообщений: 66
ravenco, спасибо буду пытаться разобраться
Antares, ай м сорри

Создать новую тему Ответ Часовой пояс GMT +4, время: 16:03.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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