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

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

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

Регистрация: Sep 2009
Сообщений: 3
По умолчанию Новое событие

В классе генерирую новое событие и мне его надо прослушивать вне этого класса
Код AS3:
	public class stepper extends EventDispatcher{
....
		public static var ACTION:String = "action";
....
				dispatchEvent(new Event(stepper.ACTION));
потом создаю несколько объектов этого класса
Код AS3:
var A: stepper = new stepper;
var В: stepper = new stepper;
прослушивать их получается только таким образом
Код AS3:
A.addEventListener(stepper.ACTION, onElementSelect);
B.addEventListener(stepper.ACTION, onElementSelect);
Вопрос - как добавить слушателя чтобы слушал сразу все объекты этого класса без перечисления их?

Старый 09.10.2009, 18:07
cleptoman вне форума Посмотреть профиль Отправить личное сообщение для cleptoman Найти все сообщения от cleptoman
  № 2  
Ответить с цитированием
cleptoman
 
Аватар для cleptoman

блогер
Регистрация: Mar 2007
Сообщений: 1,291
Записей в блоге: 5
Отправить сообщение для cleptoman с помощью ICQ
вешать на стейдж и диспатчить с баблингом
__________________
http://cleptoman.free-lance.ru
achivements: дважды благословлен на воровство. осеяный благодатью

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

Регистрация: Sep 2009
Сообщений: 3
Распишите плиз нюбу

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

блогер
Регистрация: Mar 2007
Сообщений: 1,291
Записей в блоге: 5
Отправить сообщение для cleptoman с помощью ICQ
думаю хелп поможет, потому что контекста вашего вещания я не уловил..
Код AS3:
dispatchEvent(new Event(stepper.ACTION,true));
Код AS3:
stage.addEventListener(stepper.ACTION, onElementSelect);// stage не обязательно. это может быть Документ класс
__________________
http://cleptoman.free-lance.ru
achivements: дважды благословлен на воровство. осеяный благодатью

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

Регистрация: Jul 2009
Сообщений: 35
Я вот до конца не понял зачем с bubbles делать событие.
Или это для универсальности, чтобы его можно было при случае и на фазе всплытия слушать?

Старый 11.10.2009, 02:17
Anton Riot вне форума Посмотреть профиль Отправить личное сообщение для Anton Riot Посетить домашнюю страницу Anton Riot Найти все сообщения от Anton Riot
  № 6  
Ответить с цитированием
Anton Riot

Регистрация: Sep 2008
Адрес: Москва
Сообщений: 291
Отправить сообщение для Anton Riot с помощью ICQ
Там где "dispatchEvent", можно передавать по static функционалу что надо куда надо..

Старый 11.10.2009, 13:26
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 7  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Код AS3:
public class Stepper extends EventDispatcher {
 
	private static const _dispatchers:Object = new Object();
 
	public static function addEventListener(type:String, method:Function):void {
		for each (var dispatcher:IEventDispatcher in _dispatchers) {
			dispatcher.addEventListener(type, method);
		}
	}
 
	// Constructor
	public function Stepper() {
		_dispatchers[Math.random()] = this;
	}
 
}
 
 
var stepperOne:Stepper = new Stepper();
var stepperTwo:Stepper = new Stepper();
var stepperThree:Stepper = new Stepper();
 
Stepper.addEventListener(StepperEvent.ACTION, this.onElementSelect);
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 11.10.2009, 18:07
SamFR вне форума Посмотреть профиль Отправить личное сообщение для SamFR Посетить домашнюю страницу SamFR Найти все сообщения от SamFR
  № 8  
Ответить с цитированием
SamFR

Регистрация: Mar 2008
Адрес: Ростов-на-Дону
Сообщений: 354
Elfon, с бабблингом делать событие полезно в том случае, когда без явной подписки нужно слушать произвольное количество объектов, находящихся ниже по иерархии вложенности. Но это возможно только в том случае, если все объекты добавлены на дисплей-лист (и, соответственно, наследуют DisplayObject).
И желательно не забывать останавливать дальнейшее распространение события (Event.stopPropagation()) на последнем из уровней, использующих событие.

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

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

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


 


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


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