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

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

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

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
По умолчанию Как детям отследить что их родителя удалили со сцены?

Есть компонет (любой например наследник от UIComponent). Он лежит в контейнер 1, контейнер 1 в контейнере 2 и т.д. Как этому компоненту, отследить, что какой то из эти контейнеров был удален со сцены (т.е. и компонент тоже спрятан)?

Как бы не очень хотелось пользоваться извратом с обхождение парентов вверх до самого.
__________________
33 коровы

Старый 20.03.2007, 15:22
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
А Event.REMOVED только вверх всплывает?

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

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
типа того (, детишки его просто не деспатчат. Насколько я понимаю (не смотрел в коде). это событие срабатывает того для компонета который именно ремувили, но не распостраняеться на иерархию его детей (
__________________
33 коровы


Последний раз редактировалось __i; 20.03.2007 в 15:33.
Старый 20.03.2007, 15:38
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Не проверял, но есть мысль подписать детей цепочкой (т.е. родитель-ребенок, а ребенок передает дальше своим потомкам) на кастомный ивент. Типа:

Код:
private function removedHandler(event:Event):void {
    if (event.target==this) { // Удалили нас
        var evt:CustomEvent = new CustomEvent(CustomEvent.REMOVED);
        dispatchEvent(evt);
    }
}

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

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
Цитата:
Сообщение от __etc
Не проверял, но есть мысль подписать детей цепочкой (т.е. родитель-ребенок, а ребенок передает дальше своим потомкам) на кастомный ивент. Типа:

Код:
private function removedHandler(event:Event):void {
    if (event.target==this) { // Удалили нас
        var evt:CustomEvent = new CustomEvent(CustomEvent.REMOVED);
        dispatchEvent(evt);
    }
}
не так не катит, т.к. мы не можем изменить контейнеры - это стандартные компоненты, а вот тот самый "интересующийся" ребенок это уже свой компонент. Скорей всего таки придется обходить всех родителей и подвписыватся на листенеров, а это уродство т.к. нужно переопределить кучу методов дабы при всех ремувах и аддах и прочем чистить/заполнять эти листенеры.
__________________
33 коровы

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

Регистрация: Sep 2002
Сообщений: 30,787
А почему бы тебе не создать статический класс-вещатель, который подпишется на Event.REMOVED самого-самого родителя всех и вся (ведь ивент к нему всплывет 100%) и при получении ивента разошлет всем твоим кастомным компонентам?

Старый 20.03.2007, 16:26
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 7  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
Etc дело говорит, подпиши СистемМенеджер к ремувд и смотри таргет евента
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

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

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
Ребята вы меня не поняли нифига не поняли (. Попробую описать мою конкретную ситуацию.
Есть у меня есть класс который экстендит ТексИнпут, он занимаеться тем что следит за введенными данными и если там количесво символов достигла определенного числа, то нужно показать тултип с сообщением. Станджартный тултип не канает. Так вот это сообщение находиться на сцене несколько секунд, и в эти несколько секунд это текстовое поле может просто исчезнуть(например юзер кликнул на другой таб), но оно должно "почистить" за собой тултип, если он есть.
Живет это класс также как и текст инпут типа засунул в МХМЛ или в Ас Код и есть счастье. И естетсвенно отлавливать все 148 этих инпутов и их родителей где-то в другом месте как не в самом инпуте неспортивно. Типа "Вася, вот тебе мега класс который все делает за тебя, но тебе нужно мегаизвратиться тут и тут, чтобы все работало хорошо" не катит (
__________________
33 коровы

Старый 20.03.2007, 22:43
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 9  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
почему бы не сделать нестандартный тултип? там же можно переопределить класс тултипы а с помощью mx.core.Singleton вроде можно расширить менеджер

для тултип есть полный спекрт событий и не надо будет гемороится
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

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

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
Ну если уходим от тул типа ? показать какой-то UIComponent? или просто нужно отписатся от событий?
__________________
33 коровы

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

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

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


 


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


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