Руководство по actionscript. часть 3, стр. 144

Листинг 20.6. Демонстрация событий контейнера

package { import flash. display.*; лщугЪ f \ ash. ем ents.*;

public class ContainmentEventDemo extends Sprite { public function ContainmentEventDemo ( ) { // Создаем объекты Sprite

var container:Sprite = new Sprite( ); var child:Sprite = new Sprite( ); var grandchild:Sprite = new Sprite( );

// Приступаем к приему событий Event. ADDED и Event. REMOVED contai ner. addEventLi stener(Event. ADDED, addedLi stener); contai ner. addEventLi stener(Event. REMOVED, removedLi stener);

// Добавляем объект child в объект container container. addChild(child); // Вызывает метод addedListener( )

// на фазе всплытия

// Добавляем объект grandchild в объект child child. addChild(grandchild); // Вызывает метод addedListener( )

// на фазе всплытия

// Добавляем объект container в экземпляр класса-Stage stage. addChild(container); // Вызывает метод addedListener( )

// на фазе получения

// Удаляем объект grandchild из объекта child child. removeChild(grandchiId) // Вызывает метод removedListener( )

// на фазе всплытия

// Удаляем объект container из экземпляра класса Stage stage. removeChild(container) // Вызывает метод removedListener( )

// на фазе получения

}

// Обрабатывает события Event. ADDED

private function addedListener (e:Event):void {

if (e. eventPhase!= EventPhase. AT_TARGET) { traceCcontainer has a new descendant: » + e. target);

} else {

trace(«container was added to a new parent: » + DisplayObject(e. target).parent);

}

}

// Обрабатывает события Event. REMOVED

private function removedListener (e:Event):void {

if (e. eventPhase 1= EventPhase. ATTARGET) { traceCa descendant was removed from container: » + e. target);

} else {

trace(«container was removed from its parent: » + DisplayObject(e. target).parent);

}

}

}

// В результате выполнения приложения ContainmentEventDemo // выводятся следующие строки:

container has a new descendant: [object Sprite] container has a new descendant: [object Sprite] container was added to a new parent: [object Stage] a descendant was removed from container: [object Sprite] container was removed from its parent: [object Stage]

Реальный пример использования событий контейнера

Теперь, когда известно, как работают события Event. ADDED и Event. REMOVED в теории, рассмотрим, как можно использовать их в реальном приложении. Предположим, что мы создаем класс IconPanel, который управляет визуальным расположением графических значков. Класс IconPanel используется в качестве одной из частей большего оконного компонента в интерфейсе, основанном на оконном представлении. Всякий раз при добавлении нового или удалении существующего значка из объекта IconPanel этот объект исполняет алгоритм по размещению значков. Чтобы определить моменты добавления и удаления дочерних значков, объект IconPanel регистрирует приемники для событий Event. ADDED и Event. REMOVED.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставить комментарий

Вы должны авторизоваться для отправки комментария.

Полезные ссылки
Случайные записи
  • 23.02.2011">Руководство по actionscript. часть 7, стр. 025
  • 11.03.2011">Руководство по actionscript. часть 3, стр. 143
  • 05.11.2011">Как сделать кнопку для сайта
  • 28.02.2011">Руководство по actionscript. часть 6, стр. 014
  • 08.03.2011">Руководство по actionscript. часть 4, стр. 073
  • 25.02.2011">Руководство по actionscript. часть 6, стр. 078
  • 02.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.112
  • 18.03.2011">Руководство по actionscript. часть 2, стр. 130
  • 17.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.121
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.1
  • 13.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.105
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.21
  • 20.01.2010">Векторные файлы и графика
  • 06.03.2011">Руководство по actionscript. часть 4, стр. 127
  • 10.08.2011">Samsung GT-S5250 – отличный помощник
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...