![]() |
|
||||||||||
|
|||||
|
Регистрация: Sep 2007
Сообщений: 117
|
Добрый день.
Как я понимаю понимаю событие MOUSE_OVER возникает тогда, когда пользователь наводит мышь на объект (к примеру container:Sprite). Если же он водит мышкой, не выходя за пределы этого объекта container, то событие MOUSE_OVER не возникает. Но если внутрь этого объекта поместиь еще какой-нибудь объект (скажем square:Sprite), то событие MOUSE_OVER будет возникать и при наведении пользователем мышки на этот дочерний объект (хотя по идее, так как он находится внутри спрайта container, никакого MOUSE_OVER быть не должно ). Если кто понимает от чего так происходит - поделитесь плз. Код, демонстрирующий данное явление (Box.as): package{ import flash.display.Sprite; import flash.geom.Point; import flash.events.*; public class Box extends Sprite{ // Document class public function Box(){ var container:Sprite = new Sprite(); var square:Sprite = new Sprite(); square.graphics.beginFill(0xFFCC00); square.graphics.drawRect(0, 0, 400, 400); var square2:Sprite = new Sprite(); square2.graphics.beginFill(0xDDCC00); square2.graphics.drawRect(0, 0, 200, 400); addChild(container); container.addChild(square); container.addChild(square2); container.addEventListener(MouseEvent.MOUSE_OVER, traceSmth); } private function traceSmth(event:MouseEvent):void{ trace("rollOver under container Sprite"); } } } Последний раз редактировалось inMashine; 19.08.2010 в 14:09. |
![]() |
Часовой пояс GMT +4, время: 10:51. |
|
|
« Предыдущая тема | Следующая тема » |
|
|