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

Однако после создания новый объект CustomMousePointer не находится в списке отображения, поэтому не имеет доступа к экземпляру класса Stage и не может зарегистрироваться для получения события MouseEvent. MOUSE MOVE. Вместо этого объект должен ожидать уведомления о том, что он был добавлен в список отображения (через событие Event. ADDEDTOSTAGE). Как только объект CustomMousePointer будет добавлен в список отображения, его переменная stage будет ссылаться на экземпляр класса Stage и он сможет успешно зарегистрироваться для получения события MouseEvent. MOUSE_MOVE. Следующий код демонстрирует соответствующий фрагмент кода, относящийся к событию Event. ADDED_TO_STAGE, из класса CustomMousePointer. Полный листинг кода класса CustomMousePointer можно найти в подразд. «Определение позиции указателя мыши» разд. «События мыши» гл. 22.

package {

public class CustomMousePointer extends Sprite { public function CustomMousePointer ( ) { // Просим сообщить, когда этот объект будет добавлен // в список отображения

addEventListener(Event. ADDED_TO_STAGE, addedToStageListener);

}

// Вызывается, когда этот объект добавляется в список отображения

private function addedToStageLi stener (e: Event) -.void { // Теперь можно безопасно регистрироваться в экземпляре класса Stage // на получение событий MouseEvent. M0USE_M0VE stage. addEventLi stener(MouseEvent. M0USE_M0VE, mouseMoveLi stener);

}

}

}

Собственные события Event. ADDED_TO_STAGE и Event. REMOVE_FROM_ STAGE. Первая версия приложения Flash Player 9 не содержала ни события Event. ADDED_TO_STAGE, ни события Event. REMOVED_FROM_STAGE. Тем не

менее, воспользовавшись обычным интерфейсом API отображения и проявив немного изобретательности, мы можем вручную определить, что данный объект был добавлен в список отображения или удален из него. Для этого мы должны отслеживать состояние предков данного объекта с помощью событий Event. ADDED и Event. REMOVED.

В листинге 20.8 демонстрируется данный подход. В этом примере пользовательский класс StageDetector следит за отображаемым объектом, чтобы определить, когда он добавляется в список отображения или удаляется из него. Класс StageDetector рассылает пользовательское событие:

? StageDetector. ADDED TO STAGE — когда объект добавляется в список отображения;

? StageDetector. REMOVED_FROM_STAGE — когда объект удаляется из списка отображения.

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

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

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

Полезные ссылки
Случайные записи
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.78
  • 21.07.2011">Венгрия – жемчужина Европы
  • 06.03.2011">Руководство по actionscript. часть 4, стр. 131
  • 09.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.148
  • 08.03.2011">Руководство по actionscript. часть 4, стр. 073
  • 12.03.2011">Руководство по actionscript. часть 3, стр. 124
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.85
  • 19.02.2012">Кто же такой верстальщик?
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 073
  • 20.03.2011">Руководство по actionscript. часть 2, стр. 056
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.22
  • 21.03.2011">Руководство по actionscript. часть 2, стр. 048
  • 02.03.2011">Руководство по actionscript. часть 5, стр. 083
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.36
  • 06.03.2011">Руководство по actionscript. часть 4, стр. 152
Опрос

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

View Results

Loading ... Loading ...