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

Дополнительную информацию о приоритетах событий можно найти в гл. 12.

Изменение иерархии отображения и цепочка диспетчеризации событий

Непосредственно перед тем, как приступить к диспетчеризации заданного события, среда выполнения Flash заранее определяет для него всю цепочку диспетчеризации, учитывая текущее состояние иерархии отображения его получателя. Другими словами, список объектов, которые будут уведомлены о возникновении события, и порядок уведомления этих объектов определяются заранее — до того как начнется процесс диспетчеризации события. После начала процесса диспетчеризации уведомление объектов о возникновении события осуществляется в соответствии с этим предопределенным порядком, даже если в процессе диспетчеризации структура иерархии отображения объекта-получателя будет изменена приемниками событий.

Предположим, у нас есть экземпляр класса TextField, содержащийся в экземпляре класса Sprite, который, в свою очередь, содержится в экземпляре класса Stage. ПустьтaкжeмыpeгиcтpиpyeмпpиeмникstageClickListener ( ) вэкземпляре класса Stage для уведомления о возникновении события MouseEvent. CLICK в фазе захвата, как показано в следующем коде:

stage. addEventLi stener(MouseEvent. CLICK. stageCli ckLi stener, true):

Наконец, предположим, что зарегистрированная функция stageClickListener ( ) содержит код, который удаляет объект TextField из его родительского объекта Sprite, как показано в следующем коде:

private function stageClickListener (e:MouseEvent):void { // Если щелкнули кнопкой мыши на объекте TextField… if (е. target == textField) {

// …то удаляем его

removeChild(textField);

textField = null:

}

}

Когда пользователь щелкает кнопкой мыши в текстовом поле, среда Flash выполняет диспетчеризацию события MouseEvent. CLICK, получателем которого является объект TextField. Перед началом процесса диспетчеризации среда выполнения заранее определяет всю цепочку диспетчеризации события, как показано ниже:

ФАЗА ЗАХВАТА: (1) Объект Stage

(2) Объект Sprite ФАЗА ПОЛУЧЕНИЯ: (3) Объект TextField ФАЗА ВСПЛЫТИЯ: (4) Объект Sprite

(5) Объект Stage

Когда начинается процесс диспетчеризации, среда Flash сначала уведомляет о возникновении события объект Stage (1). В результате этого уведомления вызывается приемник stageClickListener ( ) объекта Stage, который удаляет объект TextField из списка отображения. Далее, несмотря на то, что объект Sprite больше не является потомком объекта TextField, среда выполнения уведомляет о возникновении события объект Sprite (2). Затем, несмотря на то

что объекта Text Field больше нет в списке отображения, среда выполнения уведомляет о возникновении события объект TextField (3). Наконец, в фазе всплытия среда Flash снова уведомляет о возникновении события объекты Sprite (4) и Stage (5). Даже несмотря на то, что иерархия отображения получателя события была изменена в процессе диспетчеризации, событие все равно проходит по всей предопределенной цепочке диспетчеризации события.

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

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

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

Полезные ссылки
Случайные записи
  • 03.03.2011">Руководство по actionscript. часть 5, стр. 074
  • 12.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.106
  • 15.03.2011">Руководство по actionscript. часть 3, стр. 056
  • 22.01.2011">Руководство по actionscript. часть 1, стр. 119
  • 22.01.2011">Руководство по actionscript. часть 1, стр. 099
  • 05.03.2011">Руководство по actionscript. часть 5, стр. 019
  • 11.03.2012">Судья обязал Google и Motorola Mobility предоставить Apple данные об Android
  • 24.02.2011">Руководство по actionscript. часть 7, стр. 010
  • 17.08.2010">Страничка со списком услуг
  • 11.03.2011">Руководство по actionscript. часть 3, стр. 146
  • 23.02.2011">Руководство по actionscript. часть 7, стр. 027
  • 15.03.2011">Руководство по actionscript. часть 3, стр. 055
  • 18.03.2011">Руководство по actionscript. часть 2, стр. 112
  • 03.09.2010">Сайт с точки зрения маркетинга.
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.11
Опрос

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

View Results

Loading ... Loading ...