Форум программистов, компьютерный форум, киберфорум
ActionScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
1 / 1 / 1
Регистрация: 30.11.2013
Сообщений: 31
AS 3.0

Как правильно пользоваться dispatchEvent?

12.12.2013, 17:08. Показов 2214. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В процессе освоения as столкнулся с такой задачей:
Из movieClip1 нужно отключать/включать слушатель событий для movieClip2.Выключить пробовал так:
1)
movieClip1:
ActionScript 3
1
dispatchEvent (new Event("offEvent",true));
movieClip2
ActionScript 3
1
2
3
4
5
6
function fnDel()
{
    removeEventListener(MouseEvent.CLICK,fnBtClick);
}
this.addEventListener("offEvent",fnDel);
//Внутри клипа movieClip2 событие "offEvent" не проходит
.
2)
ActionScript 3
1
2
this.parent.getChildByName("movieClip2") as MovieClip.fnDel();
//Вопще не понимаю че написал и как оно должно работать)
Помогите разобраться, как решить задачу?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.12.2013, 17:08
Ответы с готовыми решениями:

dispatchEvent не работает(
Есть два класса, func_wall отправляет событие, а index должен это же событие обработать func_wall.as package basicObjects{ import...

DispatchEvent в ООП
Всем привет. Столкнулся с такой проблемой: Есть 3 класса. //1-й класс. public class ShipWar extends Sprite { ...

Передать переменную вместе с dispatchEvent
Такая проблема: диспатчу событие с тела класса на тело другого класса. Так вот, как можна передать еще и параметр вместе с событием?...

6
 Аватар для Theoryofgames
254 / 238 / 50
Регистрация: 20.12.2011
Сообщений: 707
13.12.2013, 10:49
Тоже не особо понял, что вы написали
если вкратце, то класс (LittleBaby), который диспатчит событие должен быть унаследован от EventDispatcher (DisplayObject унаследован от данного класса).
Далее он диспатчит событие в нужный момент
ActionScript 3
1
2
static public const HELP_ME:String = 'help_me';
dispatchEvent(HELP_ME);
затем существует класс приемник события (он тоже унаследован от EventDispatcher)
для того, чтобы подписаться на получение события нужно прописать
ActionScript 3
1
addEventListener(LittleBaby.HELP_ME, help);
отписаться:
ActionScript 3
1
removeEventListener(LittleBaby.HELP_ME, help);
непосредственно обработчик события
ActionScript 3
1
2
3
4
private function help(event:Event) : void
{
  trace('I am on my way');
}
Но вообще в большинстве случаем вместо событий более целесобразно использовать колбэки, но это уже другая история (тема для обсуждения).
0
1 / 1 / 1
Регистрация: 30.11.2013
Сообщений: 31
13.12.2013, 15:39  [ТС]
LittleBaby))Король говорил,здесь палками не бьют за тупые вопросы.Не глумитесь над глупым чайником)
EventDispatcher может создать событие в любом месте кода или нет?
Так делать неправильно?
ActionScript 3
1
dispatchEvent (new Event("offEvent",true));
Почему создаю событие в movieClip1 и на сцене оно есть,а в movieClip2 его нет?Надо чтоб было
0
Модератор
 Аватар для TanaTiX
2936 / 1795 / 180
Регистрация: 19.02.2011
Сообщений: 6,552
13.12.2013, 15:48
Лучший ответ Сообщение было отмечено TanaTiX как решение

Решение

DenNeDobriy, почитайте основы
0
20 / 20 / 3
Регистрация: 16.10.2013
Сообщений: 295
18.12.2013, 12:45
Ты посылаеш событие (dispatchEvent) c мувика1 мувику1, а слушатель у тебя стоит в мувике2 - так работать не будет. Посылать и слушать события можна внутри одного класса. Правильно будет в мувике1 создать ссылку на мувик2 и в мувике1 в нужном тебе месте посылать событие так:
ActionScript 3
1
mc2.dispatchEvent (new Event("offEvent",true));
А в теле самого мувика2 уже слушаеш свое событие (то что ты писал).
0
1 / 1 / 1
Регистрация: 30.11.2013
Сообщений: 31
18.12.2013, 12:54  [ТС]
Спасибо. Уже во многом разобрался. Просто рассчитывал быстро получить ответ, т.к. всего неделю как узнал про as, но оказалось проще прочитать до корки нужную литературу.
0
18.12.2013, 13:32

Не по теме:

Цитата Сообщение от DenNeDobriy Посмотреть сообщение
рассчитывал быстро получить ответ
Можно было и ответ сразу дать, но ведь это не даст понимания и проблема в будущем останется.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.12.2013, 13:32
Помогаю со студенческими работами здесь

как правильно пользоваться
Здравствуйте, нашел интересный код для интересной задачи (Удалить комментарии из файла), но как сделать так,чтобы программа брала input.txt...

Как в C++ правильно пользоваться полиморфизмом?
Объясните пожалуйста как правильно пользоваться полиморфизмом в плюсах. Задача такая - есть некий абстрактный класс с виртуальными...

Как правильно пользоваться uln2003?
Я подключал так: E - GND COM - +4.9 Votts ( Столько ЮСБ у меня выдает) к 7B - Пробовал подключать и +4.9 и Землю На выходе 7С...

Transparent. Как правильно пользоваться?
Не получается наложить картинку поверх фона чтоб лишнее становилось прозрачным без уничтожения фона :( Помогите как правильно сделать....

Как правильно пользоваться облачными хранилищами?
Встал вопрос о хранении данных на облаке. Раньше ими не пользовался, а поск в интернетах результата не принес (рассматривал и различные...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru