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

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

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

Регистрация: Aug 2005
Сообщений: 48
Отправить сообщение для Chilly с помощью ICQ
Question onRelease для вложенных клипов

Помогите пожалуйста, не знаю как сделать. Есть ScrollPane, его контентом является клип1. На этот контентный клип1 установлен еще один клип2.И надо сделать такое:
Код:
f=1;
if (f == 1) {
	ScrollP.spContentHolder.onRelease = function() {
		trace("action1");
	};
} else {
	ScrollP.content["03000"].onRelease = function() {
		trace("x="+sp.content["03000"]._x);
	};
}
Т.е. надо при одном значении f реагировать на нажатие клипа1, а при другом - клипа2.
Но суть в том, что если изменить f прямо во время выполнения программы , то ничего не произойдет. Программа будет работать так, как будто f всегда 1. f я меняю правильно, проблема именно в событиях onRelease.

Старый 27.11.2005, 22:42
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 2  
Ответить с цитированием
Antares
Banned
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Надо сделать f локальной переменной для мувиклипа content (а это именно мувиклип), либо пользоваться хиттестом и техникой ручной передачи событий вглубь:

В находится в А. При вызове события onRelease у А мы руками вызываем его у В, добавляя, если надо, что-то еще. Неудобно, но не смертельно.

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

Регистрация: Aug 2005
Сообщений: 48
Отправить сообщение для Chilly с помощью ICQ
А можно как-нибудь на практике про это,а то я во флеше совсем плохой.

Старый 27.11.2005, 23:53
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 4  
Ответить с цитированием
Antares
Banned
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Когда просят так, можно (хотя я не сторонник поставки нубам сжатых зип папок).

1. Делаем два мувиклипа, foo и bar внутри него. foo при этом начнет перехватывать события onRelease, точнее, не будет "пропускать их вглубь".
2.
Код:
foo.onRelease = function()
{
    trace("Событие для foo");
    if(this.bar.hitTest(_xmouse, _ymouse, true)) this.bar.onRelease();
}

bar.onRelease = function()
{
    trace("Событие для bar");
}

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

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

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


 


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


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