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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 24.05.2011, 08:38
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 11  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Цитата:
Сообщение от DZHETIGAPA Посмотреть сообщение
Психо Тигр, допустим я продиспатчил событие в самом глубоком объекте
Код AS3:
dispatchEvent(new Event(Event.CHANGE, true));
А затем в главном родительском объекте просто подписываюсь на это событие? так выходит?
По идее, да.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

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

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Цитата:
Психо Тигр, допустим я продиспатчил событие в самом глубоком объекте
Именно. Но главное помнить, что термин "глубкой" здесь употребляется в иерархии DisplayList`а, как я сказал выше. Это означает, что чтобы объект вложить в другой, нужно применить DisplayObjectContainer#addChild к объекту, который станет родителем. Попробуйте.

Старый 24.05.2011, 12:45
DZHETIGAPA вне форума Посмотреть профиль Отправить личное сообщение для DZHETIGAPA Найти все сообщения от DZHETIGAPA
  № 13  
Ответить с цитированием
DZHETIGAPA
[+3 18.04.11]

Регистрация: Dec 2010
Сообщений: 342
Попробовал! Все работает. Спасибо. Всегда не понимал эти баблинг эффекты, но теперь вроде доходит.

Старый 24.05.2011, 14:16
Universe вне форума Посмотреть профиль Отправить личное сообщение для Universe Найти все сообщения от Universe
  № 14  
Ответить с цитированием
Universe
 
Аватар для Universe

Регистрация: Feb 2010
Сообщений: 811
Отправить сообщение для Universe с помощью ICQ Отправить сообщение для Universe с помощью Skype™
stweet, я проанализировал ваш пример - очень занимательно!
Начинаю въезжать в этот bubbling))
Получается если выставлять его в true - то событие будет проходить от объекта который его вызвал вверх по цепочке вложенности?
Dukobpa3, а можно пример event.stopPropagation(); ?

Старый 24.05.2011, 15:09
Nemez вне форума Посмотреть профиль Отправить личное сообщение для Nemez Найти все сообщения от Nemez
  № 15  
Ответить с цитированием
Nemez
 
Аватар для Nemez

Регистрация: Jun 2010
Сообщений: 189
Код AS3:
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseListener);
А если мы пишем в главном родительском объекте
Код AS3:
this.addEventListener(MouseEvent.MOUSE_DOWN, onMouseListener);
это эквивалентно? Будет так же работать?

Старый 24.05.2011, 15:27
stweet вне форума Посмотреть профиль Отправить личное сообщение для stweet Найти все сообщения от stweet
  № 16  
Ответить с цитированием
stweet
 
Аватар для stweet

Регистрация: Mar 2010
Адрес: 54.713862552265084 = 20.442724227905273
Сообщений: 449
Отправить сообщение для stweet с помощью Skype™
Цитата:
Получается если выставлять его в true - то событие будет проходить от объекта который его вызвал вверх по цепочке вложенности?
совершенно верно.

Цитата:
Сообщение от Nemez Посмотреть сообщение
Код AS3:
this.addEventListener(MouseEvent.MOUSE_DOWN, onMouseListener);
это эквивалентно? Будет так же работать?
если в майне то да. Т.е. "this" это обращение к самому себе.
__________________
Спросишь, дурак на минуту. Если не спросишь, дурак на всю жизнь!

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

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
Universe, ну вот то что я писал про кнопку на панели которая в окне которое на стедже.
Цитата:
панель подписывается на кнопку.
окно подписывается на панель
а мейн подписывается на окно.

и все они получают одно и то же событие.
По-умолчанию все они получат одно и то же событие, если все подпишутся, и вызовутся три слушателя. Но к примеру событие всплыло до уровня окна, а окно в своем слушателе вызывает event.stopPropagation()
В такой ситуации мейн событие не получит. Его(событие) убили вызовом функции, запретив ему всплывать выше.

Аналогично если stopPropagation() сделает панель, то событие не получит ни окно, ни мейн. Так как цепочка прервется еще до окна, а мейн тот еще выше. Код изобретать сейчас ну очень нехочется
__________________
Кто к нам с чем для чего - тот у нас того от того.

Старый 24.05.2011, 20:27
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 18  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Цитата:
это эквивалентно? Будет так же работать?
Цитата:
если в майне то да. Т.е. "this" это обращение к самому себе.
Неверно. stage это stage. Он самый большой и злой, ссылается на самый-главный-родительский контейнер. А вот в майне this ссылается на root. Он тоже большой и главный, но главный внутри этого swf. Флешка может иметь много root`ов, но stage-один. Выражаясь фигурально, stage содержит в себе root.

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

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Хаха.
Код AS3:
trace(this.constructor !== Stage); // Кто получит true?
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 24.05.2011, 23:00
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 20  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Я получил

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

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

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


 


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


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