![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2006
Сообщений: 72
|
Такая ситуация.
Есть клипы (экземпляры одного класса). Имеется обработчик onMouseDown. На сцене клипы могут перекрываться друг другом. Вопрос: каким образом можно сделать, чтобы 1-м обработал onMouseDown клип, который перекрывает все остальные? |
|
|||||
|
Регистрация: Dec 2005
Сообщений: 316
|
если onMouseDown привязан к клипу, то так и будет, еси к _root, то смотри глубину. возможно лучшим решением будет помещать наверх именно тот клип, на который был клик подобное реализовано здесь:
[ваш диск]:\Program Files\Macromedia\Flash 8\Samples and Tutorials\Samples\Behaviors\BehaviorsScrapbook |
|
|||||
|
Регистрация: Jan 2006
Сообщений: 72
|
onMouseDown был привязан к клипу, но все ровно порядок обработки был не тот, т.е. сначала событие мог поймать клип, находящийся ниже другого (думаю из-за того, что использовался swapDepth)
Проблема решена путем замены onMouseDown на onPress ![]() |
|
|||||
|
Banned
[+1 16.05.2006]
[++1 16.05.2006] [+ 1 21.05.06] [++ за хамство] [+1 21.05.2006] Регистрация: Dec 2003
Сообщений: 3,925
|
MouseDown -- событие глобальное
Применяем onRelease для верхнего объекта, потом делаем event bubbling, либо ручной вызов для всех прочих. |
|
|||||
|
Регистрация: Nov 2005
Сообщений: 221
|
2Antares
Цитата:
И для того чтобы применять такие умные вещи , для начала нужно организовать иерархию, например с отношениями чилд-парент... |
![]() |
![]() |
Часовой пояс GMT +4, время: 22:53. |
|
|
« Предыдущая тема | Следующая тема » |
|
|