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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 06.04.2006, 15:02
phpshnik вне форума Посмотреть профиль Отправить личное сообщение для phpshnik Найти все сообщения от phpshnik
  № 1  
Ответить с цитированием
phpshnik

Регистрация: Apr 2006
Сообщений: 3
По умолчанию Остлеживание событий кнопок, встроенных в клип.

Добрый день почтенной публике.
Мой вопрос заключается в следующем:

я нарисовал клип, в который вставил кнопку, но дальше, куда бы я не пытался вставить код обработки кнопки, он не работает. думаю, люди, разбирающиеся в Action Script быстрее поймут проблему кода, рассматривая его своими глазами, чем мои невнятные объяснения, потому вот исходник:

http://www.nyagantel.ru/tmp/menu2.rar

всплывающий блок содержит кнопку (Link click...), привязать код к которой у меня не получается (под "привязать код" я подразамеваю обработчики on (rollOver), on (press) и пр.

Друзья, тем, кто хочет послать меня сразу в... хелпы, хочу сказать, что они могут не утруждать себя написанием ответа - у меня есть 2 книги по флешу и одна огромная по Action Script. Дело не втом, что мне в падлу все это читать (все это я активно читаю), дело в том, что я не совсем понимаю логику взаимодействия объектов во Флеше, и как следствие логику работы самого кода. Я очень не плохо знаю VB 6.0 и РНР (могу помочь советом, если кому надо по этим языкам), но это знание мне вот очень мало помогает в освоении Action Script. Так что я буду очень признателен за объяснение, что (и главное ПОЧЕМУ) именно так надо делать т никак по другому.

Заранее благодарю за внимание и участвие.

Старый 06.04.2006, 15:06
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
Код:
// Код помещать В КАДР, помещение кода на объекты -- это страшный грех
myButton.onRelease = function()
{
    // Just for example
    getURL( "http://www.novemberain.com/" );
}

Старый 06.04.2006, 15:18
phpshnik вне форума Посмотреть профиль Отправить личное сообщение для phpshnik Найти все сообщения от phpshnik
  № 3  
Ответить с цитированием
phpshnik

Регистрация: Apr 2006
Сообщений: 3
Antares,
по вашей рекомендации всатвлял код в первый кадр клипа, в котором расположена кнопка, и в первый кадр основной ленты - результат все тот же - ничего не работает.

Старый 06.04.2006, 17:06
KUZEN вне форума Посмотреть профиль Отправить личное сообщение для KUZEN Посетить домашнюю страницу KUZEN Найти все сообщения от KUZEN
  № 4  
Ответить с цитированием
KUZEN
Ветеран форума
 
Аватар для KUZEN

Регистрация: Jun 2005
Адрес: MOSCOW
Сообщений: 6,852
Отправить сообщение для KUZEN с помощью ICQ Отправить сообщение для KUZEN с помощью Yahoo Отправить сообщение для KUZEN с помощью Skype™
Код нужно (желательно и намного удобнее) писать централизованно в одном месте в первом кадре _root ...

Допустим что бы повесить обработчик нажатия на мувик mc2 который находится в mc1 , а тот в свою очередь находится в _root , то пишем

Код:
_root.mc1.mc2.onPress = function(){
getURL("http://mysite.ru"):
}
__________________
BestMasterиZация

Старый 06.04.2006, 17:12
KPaul вне форума Посмотреть профиль Отправить личное сообщение для KPaul Найти все сообщения от KPaul
  № 5  
Ответить с цитированием
KPaul
 
Аватар для KPaul

Регистрация: Nov 2005
Сообщений: 221
Стандартное перекрытие обработчиков. В примере на весь клип повешено событие реакции на мышь, поэтому обработчики вложенных клипов игнорируются. Советую также не использовать тип button без надобности,
вместо юзай movieclip.
Один из вариантов, через hitTest. Смени тип кнопки на movieclip, и назови его 'but1':
Код:
mnu1.onPress = function(){
	if(this.but1.hitTest(_xmouse, _ymouse, true)){
		trace("HELLO");
	}
}
Также советую использовать хит арею(прямоугольник с альфой=0), если нет ничего кроме текста.

Старый 07.04.2006, 08:13
phpshnik вне форума Посмотреть профиль Отправить личное сообщение для phpshnik Найти все сообщения от phpshnik
  № 6  
Ответить с цитированием
phpshnik

Регистрация: Apr 2006
Сообщений: 3
KUZEN
спасибо, учту.

KPaul
огромное спасибо за пример кода и, что важнее, за разъяснение. Все понял, и все заработало.

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

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

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


 


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


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